Traitement numérique du signal - LSIS · Objectifs et prérequis • Objectifs – Acquérir les...

102
 Traitement numérique du signal Eric Busvelle

Transcript of Traitement numérique du signal - LSIS · Objectifs et prérequis • Objectifs – Acquérir les...

Traitement numeacuterique du signal

Eric Busvelle

Objectifs et preacuteshyrequis

bull Objectifsndash Acqueacuterir les outils matheacutematiques utiles au

traitement du signalndash Maicirctriser les techniques de traitement du

signalbull Preacuteshyrequis

ndash M6 Matheacutematiques pour le signal discretndash TR1 Modulations numeacuteriques et notions de

compression

Sommaire PPN

bull Notions de signaux aleacuteatoires (bruit)bull Correacutelation orthogonaliteacutebull Transformeacutee de Fourier discregravete 1D2Dbull Rappels sur la transformeacutee en Zbull Filtrage numeacuteriquebull Applications agrave la compression audiovideacuteo

Mots cleacutes FFT filtrage numeacuterique compression

Indications de mise en oeuvre

bull Applications aux DSP(Digital Signal Processor)

bull Logiciels de calcul numeacuteriquendash Matlabndash Scilabndash Octave

Supports de cours

Deacutebuter en traitement numeacuterique du signal Application au filtrage et au traitement des sonsJeanshyNoeumll MartinProf Agrave lrsquoIUT drsquoAnnecy

Analyse et controcircle numeacuterique du signal

Philippe Destuynder Prof CNAMFranccediloise Santi Prof CNAM

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Objectifs et preacuteshyrequis

bull Objectifsndash Acqueacuterir les outils matheacutematiques utiles au

traitement du signalndash Maicirctriser les techniques de traitement du

signalbull Preacuteshyrequis

ndash M6 Matheacutematiques pour le signal discretndash TR1 Modulations numeacuteriques et notions de

compression

Sommaire PPN

bull Notions de signaux aleacuteatoires (bruit)bull Correacutelation orthogonaliteacutebull Transformeacutee de Fourier discregravete 1D2Dbull Rappels sur la transformeacutee en Zbull Filtrage numeacuteriquebull Applications agrave la compression audiovideacuteo

Mots cleacutes FFT filtrage numeacuterique compression

Indications de mise en oeuvre

bull Applications aux DSP(Digital Signal Processor)

bull Logiciels de calcul numeacuteriquendash Matlabndash Scilabndash Octave

Supports de cours

Deacutebuter en traitement numeacuterique du signal Application au filtrage et au traitement des sonsJeanshyNoeumll MartinProf Agrave lrsquoIUT drsquoAnnecy

Analyse et controcircle numeacuterique du signal

Philippe Destuynder Prof CNAMFranccediloise Santi Prof CNAM

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Sommaire PPN

bull Notions de signaux aleacuteatoires (bruit)bull Correacutelation orthogonaliteacutebull Transformeacutee de Fourier discregravete 1D2Dbull Rappels sur la transformeacutee en Zbull Filtrage numeacuteriquebull Applications agrave la compression audiovideacuteo

Mots cleacutes FFT filtrage numeacuterique compression

Indications de mise en oeuvre

bull Applications aux DSP(Digital Signal Processor)

bull Logiciels de calcul numeacuteriquendash Matlabndash Scilabndash Octave

Supports de cours

Deacutebuter en traitement numeacuterique du signal Application au filtrage et au traitement des sonsJeanshyNoeumll MartinProf Agrave lrsquoIUT drsquoAnnecy

Analyse et controcircle numeacuterique du signal

Philippe Destuynder Prof CNAMFranccediloise Santi Prof CNAM

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Indications de mise en oeuvre

bull Applications aux DSP(Digital Signal Processor)

bull Logiciels de calcul numeacuteriquendash Matlabndash Scilabndash Octave

Supports de cours

Deacutebuter en traitement numeacuterique du signal Application au filtrage et au traitement des sonsJeanshyNoeumll MartinProf Agrave lrsquoIUT drsquoAnnecy

Analyse et controcircle numeacuterique du signal

Philippe Destuynder Prof CNAMFranccediloise Santi Prof CNAM

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Supports de cours

Deacutebuter en traitement numeacuterique du signal Application au filtrage et au traitement des sonsJeanshyNoeumll MartinProf Agrave lrsquoIUT drsquoAnnecy

Analyse et controcircle numeacuterique du signal

Philippe Destuynder Prof CNAMFranccediloise Santi Prof CNAM

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Pour aller plus loinhellipOndelettes pour le signal numeacuteriqueFreacutedeacuteric Truchetet Prof agrave lrsquouB

The DSP handbookAlgorithms

Applications and design techniques

Bateman Bateman and PatersonshyStephens

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Introduction

bull Pourquoi numeacuteriser un signalndash le stockerdupliquertransmettre sans perte ou au

contraire pour le compresserndash lui faire subir des traitements numeacuteriques (filtrage

analyse preacutedictionhellip)ndash meacutelanger diffeacuterents signaux de diffeacuterentes natures sur

de mecircmes supports (multimeacutedia son imagehellip)bull Avantages de la numeacuterisation

ndash preacutecision et stabiliteacute dans le temps et dans la productionndash souplesse polyvalence modulariteacute et eacutevolutiviteacute

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Chaicircne de transformations

Locuteur Signal acoustique

Signal eacutelectrique

Signal numeacuterique

Auditeur

Signal continu

Micro

Signal continu

Hautshyparleur

Signal eacutechantillonneacute

CAN

Signal eacutechantillonneacute

CNA

Signal numeacuteriqueSignal compresseacute

Compression

Signal compresseacute

Deacutecompression

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Des compeacutetences varieacutees

Monde exteacuterieur

Signal continu

Capteur Actionneur

Signal eacutechantillonneacute

CAN CNA

Signal compresseacute

Compression Deacutecompression

bull PhysiqueElectroniquendash Capteursndash Filtresndash DSP

bull Informatiquendash Programmation Matlab (RampD)

C assembleur hellipbull Matheacutematiques

ndash Probabiliteacutesndash Analyse de Fourierndash Transformeacutee (Z Laplace)

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Plan du cours

bull I Eacutechantillonnagebull II Conversion Analogique Numeacuteriqueharr

bull III Analyse des systegravemes numeacuteriquesbull IV Filtrage numeacuteriquebull V Application Traitement numeacuterique des sons (TPs)

La structure du cours reprend les eacutetapes de traitement

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Echantillonneurshybloqueur

Signal continu

gtgt N1=1000gtgt [xfs]=gensig(N1 16000 [30 40 45] [000]shy80)

function [xfs]=gensig(NFeFRRb) Geacutenegravere un signal qui est une somme de sinusoiumldes aux freacutequences F et avec des niveaux deacutenergie R Exemple raquo x=gensig(102416000[500 1000 1500 2000 2500][0shy5shy10shy15shy20]shy10) N=1024Fe=16000Hzf=500Hz 1000Hz 1500Hz 2000Hz et 2500Hz A= shy5dBshy10dBshy15dB et shy20dB le niveau de bruit est shy10dBTe=1Fe t=((1N)Fe)x=zeros(size(t)) E0=1for k=1length(F)

E=10^(R(k)20)E0 Leacutenergie dune sinusoiumlde est lieacutee agrave lamplitude par E=A^22A=sqrt(2E)x=x+Asin(2pitF(k))end

b=randn(size(t)) Jajoute un bruit blanc deacutenergie shy20dB par rapport agrave E0Eb=norm(b)^2N b=bsqrt(Eb)sqrt(10^(Rb20)E0) x=x+bE=norm(x)^2N Finallement je norme le signal en lui donnant une eacutenergie totale de 1x=xsqrt(E)p=N Je choisis de systeacutematiquement normaliser la TFDy=fft(xp)pf=((0(p2shy1))pFe)s=abs(y(1(p2)))

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Echantillonneurshybloqueur

Signal bloqueacute

gtgt N0=15 gtgt dN=50 gtgt xb=x gtgt for i=N0dNshy1gtgt xb(idNN1) =xb(N0dNN1)gtgt end

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Echantillonneurshybloqueur

Signal eacutechantillonneacute

gtgt xd=xb(N0dNN1)

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReconstructionSignal eacutechantillonneacute

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReconstructionSignal bloqueacute reconstruit

gtgt for i=1dNgtgt xr(idNN1)=xdgtgt end

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReconstructionSignal filtreacute

Synthegravese du filtre numeacuterique passeshybas (Chebyshev)

gtgt Fc=200gtgt Rp=05gtgt Wn=1dNgtgt [ba] =cheby1(9RpWn)

Filtrage

gtgt xf=filter(baxr)

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReconstructionSignaux superposeacutes

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReconstructionReacutesultat final

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Etude spectrale drsquoun eacutechantillonneurshybloqueur

Un eacutechantillonneur est le produit entre le signal et un peigne ideacutealement un peigne de Dirac

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Produit de deux sinusoiumldes (deacutephaseacutees)

X1 t =A1 sin 2πf 1t

X2 t =A2 cos 2πf 2t

X1 t X2 t

=A1A2sin 2πf 1t cos 2πf 2t

=A1A2

2 [sin 2π f 1 f 2t sin 2π f 1minus f 2 t ]

Le produit de deux sinusoiumldes de freacutequences f1 et f2 fait apparaicirctre deux autres sinusoiumldes agrave des freacutequences f1+f2 et f1 shy f2

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Etude spectrale drsquoun peigne

X t =A0 sin 2πf 0t

P t =E0 si frac tTe let0

2Te

0 sinon

Etudions le cas classique drsquoune sinusoiumlde de freacutequence f0

et du peigne

0 t0

2minust0

2T e

Signaux continus peacuteriodiques

Seacuteries de Fourier

E0

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Deacuteveloppement en seacuterie de Fourier

X t =a0sumk=1

infin

akcos 2πkf 0 t bksin 2πkf 0 t

a0=1T 0int0

T0 X t dt

ak=2T 0int0

T0 X t cos 2πkf 0 t dt

bk=2T 0int0

T0 X t sin 2πkf 0t dt

Le deacuteveloppement en seacuterie de Fourier preacutesente un instrument drsquoanalyse des signaux analogiques T0shypeacuteriodiques

Convention f 0=1T0

et ω0=2πf 0Joseph Fourier neacute agrave Auxerre en 1768

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Deacuteveloppement en seacuterie de Fourier

X t = sumk=minusinfin

infin

ckexp 2iπkf 0 t avec ck=1T 0int0

T 0

X t exp minus2iπkf 0t dt

La seacuterie de Fourier peut aussi srsquoexprimer sous la forme eacutequivalente

ck=a0 si k=0

akminusbk i

2 si kge1

cminusk sinon

avec les relations entre les deux deacutefinitions

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Identiteacute de Parseval

int0

T 0

∣X t ∣2dt=a0

12sumk=1

infin

ak2bk

2=sumk=minusinfin

infin

∣ck∣2

Si le signal est drsquoeacutenergie finie int0

T 0

∣X t ∣2dtinfin on a les relations

Remarque Pour un signal entre a et b on a en posant

X t = sumk=minusinfin

infin

ckexp2iπktminusmbminusa avec ck=

1bminusainta

b

X t expminus2iπktminuscbminusa dt

c=ab2

Exercice Trouver la formule eacutequivalente pour la deacutefinition en sinusshycosinus

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Analyse de Fourier de lrsquoeacutechantillonnage

P t =E0t0

T e12sum

k=1

infin sin πkF et0 πkF et0

cos 2πkFet Drsquoapregraves les formules preacuteceacutedentes

Le deacuteveloppement en seacuterie de Fourier fait apparaicirctre des raies aux freacutequences multiples de la freacutequence drsquoeacutechantillonnage Fe

0 F e 2Fe 3Fe 4Fe

Pour te assez petit

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Analyse de Fourier de lrsquoeacutechantillonnage

0 F e 2Fe

En vertu du principe de superposition le produit drsquoune sinusoiumlde de freacutequence f0 et du peigne de Dirac fera apparaicirctre des raies aux freacutequences f 0 F eplusmn f 02F eplusmn f 0 ⋯

f 0 F eminus f 0

Si f0ltFeshyf0 alors on retrouvera bien le pic correspondant au signal

Mais sinon aiumle aiumle

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Analyse de Fourier de lrsquoeacutechantillonnage

Si les freacutequences du signal sont toutes infeacuterieures agrave Fe 2 alors le signal ne sera pas deacuteteacuterioreacute

Si des freacutequences sont supeacuterieures agrave la moitieacute dela freacutequence drsquoeacutechantilshylonnage alors il y a deacuteformation du spectre par recouvrement

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sin 2πt

12

sin 4πt

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

5 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

30 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Pheacutenomegravene de GibbsLes signaux discontinus sont eux aussi tregraves deacuteteacuterioreacutes par lrsquooubli des hautes freacutequences crsquoest le pheacutenomegravene de Gibbs

S t =4π sumn=1

250 sin 2πnt n

S t =4π sumn=1

infin sin 2πnt n

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Theacuteoregraveme de ShannonshyNyquist

X t = sumn=minusinfin

infin

X nT esin 2πf tminusnT e

2πf tminusnT e

Reacuteciproquement si la freacutequence drsquoeacutechantillonnage est assez grande par rapport au signal eacutetudieacute on a le theacuteoregraveme fondamental

Theacuteoregraveme Soit X(t) une fonction telle que toutes les freacutequences sont infeacuterieures agrave f Soit Fe une freacutequence drsquoeacutechantillonnage telle que Fegt2fAlors

Conclusion Il est impeacuteratif de faire passer le signal par un filtre passeshybas analogique dont la freacutequence de coupure est infeacuterieure agrave la moitieacute de la freacutequence drsquoeacutechantillonnage avant drsquoeacutechantillonner

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Conversion analogiqueshynumeacuterique

ε=bminusa2N

() La repreacutesentation en virgule flottante ne sera pas eacutetudieacutee ici

La repreacutesentation numeacuterique en virgule fixe() drsquoune quantiteacute analogique est caracteacuteriseacutee par la plage des valeurs repreacutesentables [ab] et la preacutecision ε crsquoestshyagraveshydire la diffeacuterence entre deux valeurs conseacutecutives

Si N est le nombre de bits de la repreacutesentation

Lrsquoerreur entre la valeur analogique et la valeur numeacuteriseacutee srsquoappelle erreur de quantification

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Conversion analogiqueshynumeacuterique

bull Biais systeacutematique (erreur sur a)bull Erreur de gain (erreur sur bshya)bull Nonshylineacuteariteacutes (distorsion de la fonction lineacuteaire)

En plus des erreurs de quantification un CAN

peut preacutesenter les erreurs suivantes

b=int 2N yminusabminusa

yb

La conversion reacuteciproque CNA peut preacutesenter le mecircme type drsquoerreur

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Notions de processusUn processus aleacuteatoire (discret) est une suite de variables aleacuteatoires X(n) deacutefinie sur un espace de probabiliteacute (ΩAP)

Exemplesbull Toute suite numeacuterique est aussi un processus aleacuteatoire

bull On lance un deacute et on note X(n) le reacutesultat du niegraveme reacutesultat

bull On pose X(0)=0 On lance une piegravece et on pose au niegraveme lanceacute X(n+1)=X(n) + 1 si le reacutesultat est Pile

X(n+1)=X(n) shy 1 si le reacutesultat est Face Crsquoest une marche aleacuteatoire

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Notions de processus

Exemples (suite)bull On note X(n) le nombre de requecirctes arrivant sur un serveur par uniteacute de temps Crsquoest un cas de loi de Poisson

bull On note X(n) le temps drsquoattente avant lrsquoarriveacutee de la niegraveme requecircte sur un serveur Crsquoest la loi exponentielle

P X n =k = λk

keminusλ

P aleX nb =λinta

b

eminusλx dx pour 0leab

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Notions de processus

Exemples (suite)bull Si les variables aleacuteatoires X(n) sont indeacutependantes et suivent la loi normale centreacutee reacuteduite (loi de Gauss) le processus X(n) srsquoappelle un bruit blanc Crsquoest un processus tregraves important

f x =1

2πσexpminus1

2xminusm

2

σ2

Densiteacute de la loi de Gauss de moyenne m et de variance σ2

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Bruit blancLe bruit blanc est souvent utiliseacute pour modeacuteliser un bruit physique ceci en raison du reacutesultat matheacutematique suivant

Theacuteoregraveme laquo central limite raquo Si Y(n) est une suite de variables aleacuteatoires indeacutependantes et de mecircme loi de moyenne micro et de variance σ2 alors la loi de tend vers la loi de Gauss de moyenne nmicro et de variance nσ2 ou de faccedilon eacutequivalente mais plus rigoureuse

S n =Y 1 ⋯Y n

S n minusnμσ nninfinN 01

Somme de n variables aleacuteatoires uniformes discregravetes n= 1 2 510100

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Bruit blancSignal utile + Bruit de mesure

Probleacutematique eacuteliminer le bruit et reacutecupeacuterer les informations utilescad inverser cette opeacuteration

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Processus stationnaires

On dit drsquoun processus aleacuteatoire X(n) qursquoil est stationnaire si la loi de X(n) ne deacutepend pas de n

On dit que X(n) est stationnaire du 1er ordre siexiste et est indeacutependant de n

On dit que X(n) est stationnaire du 2nd ordre srsquoil est stationnaire du 1er ordre etexiste et ne deacutepend pas de n

Theacuteoregraveme

E [X n ]=micro

E [ X i minusmicro X j minusmicro ]=γ ∣iminus j∣

Stationnaire rArr Stationnaire du 2nd ordrerArr Stationnaire du 1er ordre

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Autocovarianceet autocorreacutelation

Pour un processus stationnaire du 2nd ordre on note pour tout entier naturel k

et ΓX(k) (indeacutependant de i) srsquoappelle lrsquoautocovariance de X

On deacutefini aussi lrsquoautocorreacutelation de X la normalisation de lrsquoautocovariance par la variance de X

de sorte que γX(0)=1

Γ X k =E [ X i minusmicro X iminusk minusmicro ]lowast

γ X k =ΓX k

σ2

On a noteacute micro=E [ X n ] et σ2=E [ X nminusmicro

2 ]()

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Processus ergodiqueLe calcul de lrsquoautocorreacutelation neacutecessite un calcul probabiliste donc la connaissance preacutecise de la loi du processus ou son estimation en reacutealisant un grand nombre de fois le processus (moyenne statistique)

Sous certaines conditions (en particulier la stationnariteacute) la connaissance du processus sur une dureacutee assez longue peut suffire agrave calculer lrsquoautocorreacutelation par une moyenne temporelle

Moyenne temporelle Moyennestatistique E(X(n))

X=1N sumk=1

N

X k

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Processus ergodiqueUn processus stationnaire est dit ergodique si on peut calculer moyenne et covariances par des statistiques temporelles

Ainsi pour un tel processus X(n) n allant de 1 agrave N on a

Γ X k iquestE [ X i minusmicro X iminusk minusmicro ]

iquest1

Nminusksum

i=k1

N

X i minusmicro X iminusk minusmicro

micro=E [X n ]asymp1N sumk=1

N

X k

σ 2=E [ X n minusmicro

2 ]asymp 1N sumk=1

N

X k minusmicro2

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=185X(kshy1)shy0855X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Exemple de calcul drsquoautocorreacutelation

gtgt N0=100 N=1000gtgt X=zeros(N0+N1)gtgt B=randn(N0+N1)gtgt for k=3N0+N X(k)=063X(kshy1)shy0098X(kshy2)+B(k)gtgt endgtgt X=X(N0+1N0+N)shyX(N0+1)gtgt [gammalags]=xcov(X20coeff)

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Covarianceet crossshycorreacutelation

Pour deux processus stationnaires du 2nd ordre on note pour tout entier relatif k

et srsquoappelle la covariance de X1 et X2

On deacutefini aussi la crossshycorreacutelation de X1 et X2 comme eacutetant la normalisation de lrsquoautocovariance par les eacutecartshytypes de X1 et de X2

Γ X1X2k =E [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

lowast

γ X1 X2k =

ΓX1X

2k

σ1σ 2

On a noteacute micro j=E [X j n ] et σ j2=E [ X j n minusmicro j

2 ] j=12()

Γ X1X2k

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Covarianceet crossshycorreacutelation

Remarque Lrsquo autocorreacutelation de X est la crossshycorreacutelation de X avec luishymecircme

Sous lrsquohypothegravese drsquoergodiciteacute on peut calculer la covariance de deux processus X1 et X2 apregraves avoir calculeacute les moyennes empiriques micro1 et micro2 par

Puis σ1 et σ2 deacutesignant les eacutecartshytypes on a toujours

Γ X1X2k iquestE [ X1 iquest minusmicro1 X2 iquestminusk minusmicro2 ]

iquest1

Nminusk sumi=k1

N

X1 i minusmicro X2 iminusk minusmicro

γ X1 X2k =

ΓX1X

2k

σ1σ 2

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Applicationsbull Geacuteologie Deacutetecter la profondeur des couches geacuteologiques

(autocorreacutelation)bull GPS calculer le deacutelai de propagation entre deux signaux eacutemis

par deux satellites (crossshycorreacutelation)bull Sonar Deacutetecter la distance drsquoune surface quelconque

(autocorreacutelation)bull Economie Repeacuterer les correacutelations entre plusieurs variables

eacuteconomiques (crossshycorreacutelation)bull FBI localiser un signal particulier dans un enregistrement plus

long ou dans un ensemble drsquoenregistrements (convolution)bull Reacuteseau estimer des retards de propagation (autocorreacutelation)

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Exemple de calcul de crossshycorreacutelation

N0=130N=1000X=zeros(N0+N1)B=randn(N0+N1)a=03b=04for k=3N0+N X(k)=(a+b)X(kshy1)shyabX(kshy2)+B(k)end

Y=X(N0+1N0+N)shyX(N0+1)X=X(N0shy10+1N0shy10+N)shyX(N0+1)X=X+randn(size(X))01Y=Y+randn(size(Y))01[gammalags]=xcorr(XY20coeff)

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Filtre de WienerLe filtre de Wiener est un outil permettant drsquoestimer une variable aleacuteatoire ou un processus aleacuteatoire entacheacute de bruit en supprimant autant que possible le bruit (on laquo filtre raquo le bruit)

Ce nrsquoest par neacutecessairement un filtre passeshybas crsquoest une meacutethodologie permettant de syntheacutetiser des filtres de tous ordres

Vous avez tous un filtre de Wiener dans votre poche

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Filtre de Wiener exemples

bull Problegravemes drsquoeacutegalisation de canal (deacuteconvolution)ndash X(n)=S(n)+W(n) ougrave S(n) est le signal et W(n) est le bruit

On mesure X(n) et on veut estimer S(n)ndash X(n)=S(n)shy2S(nshy1)+S(nshy2)+W(n)

bull Calcul de moyenne reacutecursifndash X(n)=θ+W(n)

bull Reacutegeacuteneacuteration drsquoun signal binaire bndash X(n)=b(n)+α b(nshy1)+W(n)

bull Annulation drsquoeacutechondash X(n)=(h0S(n))+W(n)

Lrsquooreillette Bluetooth 11 Nokia BHshy602 appartient au milieu de gamme et offre 11 heures dautonomie avec une qualiteacute audio profitant de son DSP ( Digital Signal Processing ) dannulation deacutecho et de reacuteduction de bruitpour des conversations plus nettes

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Filtre de WienerSoit X(n) un processus aleacuteatoire quelconque que lrsquoon suppose centreacute (sinon on remplacerait X(n) par X(n)shymicro)On suppose que θ est une variable aleacuteatoire inconnue mais que lrsquoon veut estimer lineacuteairement agrave partir des p+1 reacutecentes valeurs de X(n)

On cherche les paramegravetres a0a1hellipapOn suppose pouvoir calculer

pour k=0hellipp ougrave on note

θ=a0 X n a1 X nminus1 ⋯ap X nminusp

Γ X k et Γ Xθ k

ΓθX k =E [θ X nminusk ]

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Filtre de Wiener

θ

θ

X n

X nminus1

θminus θ

Projection orthogonale

On eacutecrit que θminus θ et X nminusk sont orthogonaux pour k=0 pE [ θminus θ X nminusk ]=0

Puis on remplace par sa valeur ce qui donne les eacutequations

θ

E [θX n ]minussum

i=0

p

aiE [X n X nminusi ]=0

E [θX nminus1 ]minussumi=0

p

aiE [X nminus1 X nminusi ]=0

E [θX nminusp ]minussumi=0

p

aiE [X nminusp X nminusi ]=0

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Filtre de Wiener

sumi=0

p

aiΓ X i =Γ θX 0

sumi=0

p

aiΓ X ∣iminus1∣=ΓθX 1

sumi=0

p

aiΓ X ∣iminusp∣=Γ θX p

En remplaccedilant par les covariances le systegraveme srsquoeacutecrit donc

Matriciellement on obtient les eacutequations de WienershyHopf

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 a0

a1

ap=

Γ θX 0

Γ θX 1

Γ θX p

(Matrice de Toeumlplitz)

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Annulation drsquoeacutechoOn mesure X(n) = S(n) + ρ S(nshyd) + σ W(n) ougrave bull S(n) est le signal laquo utile raquobull W(n) un bruit blancbull ρ et σ sont des paramegravetres drsquoamplitudebull d est le retard du agrave lrsquoeacutecho que lrsquoon veut annuler

Prise de sonavec eacutecho +

S n

+ρS nminusd

X n

σW n

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Annulation drsquoeacutecho

ΓθX k =E [S n X nminusk ]=s2 si k=0 ρs2 si k=d0 sinon

Γ X k =E [ X n X nminusk ]=s2 1ρ2 σ 2 si k=0ρs2 si k=d 0 sinon

On suppose (car crsquoest plus simple) que S est centreacute stationnaire et surtout que E[S(n)2]=s2 et E[S(n)S(nshyk)]=0 si kgt0On obtient par un calcul simple que lrsquoon fera en TD

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Annulation drsquoeacutecho

a0

a1

ap=

Γ X 0 Γ X 1 ⋯ Γ X p

Γ X 1 Γ X 0 ⋱ ⋮

⋮ ⋱ ⋱ Γ X 1

Γ X p ⋯ Γ X 1 Γ X 0 minus1

ΓθX 0

ΓθX 1

ΓθX p

S n =a0 X n a1 X nminus1 ⋯ap X nminusp

ce qui permet de poser le systegraveme de WienershyHopf et de le reacutesoudre (numeacuteriquement)

et on appliquera le filtre lineacuteaire

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Annulation drsquoeacutecho

Prise de sonavec eacutecho + Filtre de

Wiener

S n

+ρS nminusd

X n

σW n

S n

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Rappels sur la DFT(Discrete Fourier Transform)

La transformeacutee de Fourier discregravete est lrsquoanalogue pour les signaux numeacuteriques de la transformeacutee de Fourier continue utiliseacutee pour les signaux analogiques (et dont on ne parlera donc pas dans ce cours)

x k =sumn=0

Nminus1

x n expminus2iπknN

x n =1N sumk=0

Nminus1

x k exp2iπnkN

La TFD est une meacutethode drsquoanalyse dans le domaine freacutequentiel tregraves puissante Elle est aussi agrave la base de la compression de signaux (audio et videacuteo)

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Un exemple en Matlab

N=256Fe=200omega1=8omega2=35

t=(0Nshy1)Fex=3cos(2piomega1t) +5cos(2piomega2t)

figure(1) plot(x)

y=fft(x)f=(0Nshy1)FeN

figure(2) plot(f(1N2)2abs(y(1N2))N)

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

ReacutesolutionLa TFD drsquoun signal reacuteel est caracteacuteriseacutee par le nombre de points du signal N et la freacutequence drsquoeacutechantillonnage Fe La plage de freacutequence deacutetectable vaut Fe2 et la finesse de reacutesolution vaut FeN x n =3cos 2πf 1t cos 2πf 2t cos 2πf3 t 5cos 2πf 4 t

f 1=125

f 2=22

f 3=229

f 4=40

ougrave

f1 est de la formeet f 2asymp f 3

f 1=kFe

N

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Extension la DTFT

La transformeacutee de Fourier en temps discret (Discrete time Fourier Transform) est un outil plus theacuteorique

ougrave

On a la formule drsquoinversion

x ω = sumn=minusinfin

infin

x n exp minusiωn

x n =12π intminusπ

π

x ω exp iωn dω

ωisin[minusπ π [

Puisque N est infini la finesse de reacutesolution est nulle et les freacutequences sont toutes distinguables

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Algorithme FFT

La transformeacutee de Fourier rapide (Fast Fourier Transform FFT) est un algorithme de calcul de la transformeacutee de Fourier discregraveteCet algorithme a permis de rendre possible le calcul de TFD dans des applications embarqueacutees et on deacutesigne souvent la TFD par FFT

Exemple numeacuterique Un signal audio de 1 seconde eacutechantillonneacute agrave 40KHz neacutecessite 40000 valeurs numeacuteriquesLe calcul de sa FFT prend un temps de lrsquoordre de 400 ms ()La TFD classique prend un temps de lrsquoordre de 26 minutes

() agrave raison drsquoune opeacuteration pas millishyseconde

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelle

u n=1 si n=00 sinon y n =u n minusu nminus1

NB On a repreacutesenteacute la sortie y deacutecaleacutee drsquoune demishypeacuteriode dans le temps pour des raisons de repreacutesentation graphique

Filtre deacuterivateur

Filtre agrave reacuteponse impulsionnelle finie (FIR)

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Rappel sur la transformeacutee en Z

Transformeacutee en Z

Zshy1 est lrsquoopeacuterateur retard

X Z = sumn=minusinfin

infin

x n Zminusn

Zshy1x n x nminus1

Zminus1 X Z = sumn=minusinfin

infin

x n Zminus n1 = sumn=minusinfin

infin

x nminus1 Zminusn

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Rappel sur la transformeacutee en Z

La transformeacutee en Z converge agrave lrsquointeacuterieur drsquoun anneau deacutelimiteacute par deux cercles de rayons r1 et r2 deacutefinis agrave partir des rayons de convergence des seacuteries

sumn=0

infin

x n Zminusn converge hArr1Zρ1hArrZ

1ρ1

donc r1=1ρ1

r1

r2

sumn=0

minusinfin

x n Zminusn converge hArrsumn=0

minusinfin

x minusn Zn converge donc r 2=ρ2

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Rappel sur la transformeacutee en Z

La transformeacutee en Z caracteacuterise complegravetement le signal puisqursquoon a la formule drsquoinversion

x n = 12iπintγ

Znminus1X Z dZ

ougrave γ est une courbe fermeacutee entourant lrsquoorigine et incluse dans le disque uniteacute

γ

Remarque Si lrsquoanneau de convergence contient le disque uniteacute

x n = 12πint0

2πexp inω X exp iω dω

Z=exp iωen faisant le changement de variable

On retrouve aussi la DTFT X exp iω = sumn=minusinfin

infin

x n exp minusiωn = x ω

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Theacuteoregraveme des reacutesidus(utile pour certains calculs)

intγ

f z dz=2iπsumk=1

n

indγ akRes f ak

Theacuteoregraveme Notons a1hellipan les n pocircles de la fonction rationnelle f et soit γ un lacet ne passant par aucun pocircle Alors

γougrave

indγ a

Res f a =limza

1mminus1

dmminus1

dzmminus1 zminusa m f z

=limz a

zminusa f z =p a q a

est le nombre de tours que fait γ autour de a

en notant m lrsquoordre du pole et en eacutecrivant f z =p z q z

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelleDeacutefinition

h(n)y n iquest hlowastu n

iquest sumk=minusinfin

infin

h nminusk u k

u n

H( Z )

Y Z = sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminusn

= sumn=minusinfin

infin

sumk=minusinfin

infin

h nminusk u k Zminus nminusk Zminusk

= sumn=minusinfin

infin

h m Zminusm sumk=minusinfin

infin

u k Zminusk=H Z U Z

U Z Y Z

Systegraveme

Transformeacutee en Z

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelleIdentification

Systegravemey n =u n minusu nminus1

u n=1 si n=00 sinon

H( Z )

H Z =Y Z U Z

=Y Z

U Z =1

Transformeacutee en Z

Y Z =1minusZminus1

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelle

NB La sortie y(n) en rouge a eacuteteacute multiplieacutee par un facteur 5 pour des raisons graphiques

u n=1 si n=00 sinon y n =αy nminus1 1minusα u n

α=09

Systegraveme du 1er ordre

Filtre agrave reacuteponse impulsionnelle infinie (IIR)

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelle1egravere meacutethode de calcul

1) Equation sans second membre (ssm)y n =αy nminus1

Solution de la forme y n =arn

arn=αarnminus1hArrr=α (eacutequation caracteacuteristique)2) Reacuteponse agrave lrsquoentreacutee u(0)=1

y 0 =a=αy minus1 1minusα u 0 =1minusα

drsquoougrave y n = 1minusα αn si nge0

0 sinon

donc H Z =Y Z =sumn=0

infin

1minusα αnZminusn=1minusα

1minusαZminus1

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse impulsionnelle2nde meacutethode de calcul

On utilise la transformeacutee en Z

y n =αy nminus1 1minusα u n

Y Z =αZminus1Y Z 1minusα U Z

hArr 1minusαZminus1 Y Z = 1minusα U Z

hArrY Z U Z

=1minusα

1minusαZminus1=H Z

puis on raisonne laquo formellement raquo

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un eacutechelon

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest la meacutethode employeacutee pour eacutetudier la nature et identifier la reacuteponse drsquoun systegraveme physique

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Etude de la reacuteponse du second systegraveme

y n =αy nminus1 1minusα =α2 y nminus2 α 1minusα 1minusα =αn y 0 αnminus1 1minusα ⋯α 1minusα 1minusα =αn 1minusα αnminus1 1minusα ⋯α 1minusα 1minusα

= 1minusα sumk=0

nαk=1minusα

1minusαn1

1minusα=1minusαn1

drsquoougrave la forme exponentielle de la reacuteponse caracteacuteristique drsquoun 1er ordre

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un bruit blanc

y n =αy nminus1 1minusα u n y n =u n minusu nminus1

Crsquoest une meacutethode employeacutee pour identifier avec preacutecision et robustesse un systegraveme en utilisant un logiciel drsquoidentification (tel que Matlab)

Noter le comportement du systegraveme du 1er ordre crsquoest un filtre passeshybas

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1

sin 2π t

sin 16π t

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=09

sin 2π ttimes03

sin 2π ttimes10

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un signal peacuteriodique

H( Z )U Z Y Z =H Z U Z

Posons Z=exp(iω)

Y exp iω =H exp iω U exp iω

y ω u ω

Cette eacutequation relie le spectre de lrsquoentreacutee agrave celui de la sortie Le module et lrsquoargument de montrent le comportement en freacutequence du systegraveme en fonction drsquoune freacutequence normaliseacutee

Reprenons nos deux exempleshellip

H exp iω

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un signal peacuteriodique le deacuterivateur

y n =u n minusu nminus1 H Z =1minusZminus1

F ω =H exp iω =1minusexp iω =1minuscos ω minusisin ω

∣F ω ∣=2minus2cos ω arg F ω = π2minus

12ω

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Reacuteponse agrave un signal peacuteriodique le passeshybas

y n =αy nminus1 1minusα u n α=097

∣F ω ∣=∣1minusα1minusαexp minusiω

=∣αminus1∣

α2minus2αcos ω 1

ω est une freacutequence normaliseacutee ω=2π f

F eLa freacutequence de coupure est lrsquoatteacutenuation agrave 3 dB

∣F ωc ∣=1

2max

0leωleπ∣F ω ∣

Ici cela donneωcasymp002f casymp032 Hz

(Fe=100 Hz)

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre

FIR

shy Toujours stable (ie une entreacutee borneacutee geacutenegravere une sortie borneacutee)

shy Causal si N1=0 donc reacutealisable

IIR

shy Stabiliteacute agrave eacutetudier

shy Reacutealisable srsquoil est rationnel ie

ougrave P et Q sont des polynocircmes en Zshy1

H Z = sumn=N1

N 2

h n Zminusn

H Z =P Z Q Z

=

sumn=0

p

anZminusn

sumn=0

q

bnZminusn

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre

H Z =P Z Q Z

Si un filtre IIR a une fonction de traansfert rationnellealors on appelle

shy zeacuteros de H les racines (complexes) du polynocircme P

shy pocircles de H les racines du polynocircme Q

Ce type de filtre est stable si les pocircles de H sont inclus dans le disque uniteacute

Exemple le systegraveme du 1er ordrea pour fonction de transfert

Il est stable ssi

H Z = 1minusα1minusαZminus1

y n =αy nminus1 1minusα u n

∣α∣1

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

Partir de la transformeacutee de Laplace drsquoun filtre analogique

H(s)U s Y s =H s U s

Transformeacutee de Laplace

y t =intminusinfin

infin

h tminusτ u τ dτ

X s =int0

infin

x t exp minusst dt

Signal dans le domaine temporel

Transformeacutee de Laplace (s complexe)

Crsquoest lrsquoeacutequivalent (point de vue utilisation) de la transformeacutee en Z

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

Soit la fonction de transfert drsquoun filtre passeshybas analogique de pulsation de coupure

H s = 1

1sω0

La relation fondamentale entre analogique et numeacuterique est

Z=exp s T e

On ne peut lrsquoinverser telle quelle et obtenir un filtre rationnel On utilisera des approximations

exp s T easymp1s T es2 T e

2

2o s2

asymp1s T eo s

(2nd ordre)

(1er ordre)

ω0=2π f 0

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

Z=1s T ehArrs=1T e

1minusZminus1

Zminus1

Au 1er ordre

que lrsquoon substitue dans la fonction de transfert analogique

H Z =ω0Te Z

minus1

1 ω0Teminus1 Zminus1

AN F e=48 kHz f 0=1 kHz

H Z =0131 Zminus1

10869 Zminus1

y n =0131 u nminus1 0869 y nminus1

(on retrouve un passeshybas numeacuterique classique retardeacute avec α=0131)

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFe

h=plot(fFab)

Filtre analogique (bleu)

Freacutequence de coupuredu filtre analogique

1000 kHz

H s =ω0

ω0srArrF ω =∣H iω ∣=∣

ω0

ω0iω∣=

ω0

ωω0

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

f0=1000w0=2pif0Fe=48000Te=1Fef=0015000w=2pifi=sqrt(shy1)Fa=abs( 1(1+iww0) )W0=w0Tew=wFeFn=abs( W0exp(shyiw) (1+(W0shy1)exp(shyiw)) )h=plot(fFabfFnr)

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

H Z =OMEGA0Z

minus1

1 OMEGA0minus1 Zminus1rArrF ω =∣

OMEGA0 exp minusiω

1OMEGA0minus1exp minusiω ∣ ougrave OMEGA0=ω0T e

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtreagrave partir de filtres analogiques

Filtre analogique (bleu) Filtre numeacuterique (rouge)

Freacutequence de coupuredu filtre analogique

1000 kHz Freacutequence de coupuredu filtre analogiqueenv 10735 kHz

Filtre numeacuterique au second ordre (vert)

H s =ω0

ω0s

s=2T e

1minusZminus1

1Zminus1

Z=exp s T e=1s T es2 Te

2

2

Dans on replace s par son expression en Z tireacutee de

ce qui donne

(transformation bilineacuteaire)

Lrsquoapproximation (cishycontre) est tregraves bonne la freacutequence de coupure vaut 999 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Hiquest ω =I[minusω0 ω0 ]

ω = 1 si minusω0iquestωleω0

0 sinon Gabarit

On cherche h par la formule drsquoinversion(obtenue en prenant le chemin particulier qui est le cercle uniteacute Z=exp(iω)

h n =T e

2πintminusinfininfinHiquest ω exp inωT edω=

T e

2πintminusω0

ω0 exp inωT e dω

=ω0T e

π si n=0

1kπ

sin nω0T sinon

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

21egravere essai la freacutequence de Nyquist

h n =ω0T e

π=1 si n=0

1kπ

sin nω0T =0 sinon

Calcul trivial

ie y n =u n

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

ω0=2πf 0 avec f 0=F e

42nd essai

h n =12

si n=0

0 si n est pair non nul

1nπ

minus1 nminus1

2 si n est impair

Calcul eacuteleacutementaire

ie filtre non causal et non rationnel shy Il faut tronquer la seacuterie risque drsquoapparition du pheacutenomegravene de Gibbs

shy Il faut mettre un retard pas trop probleacutematique en geacuteneacuteralhellip

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

H Z = sumn=minusinfin

infin

h n Zminusn ZminusN sumn=minusN

N

h n Zminusn=sumn=0

2N

h nminusN Zminusn sumn=minusN

N

h n Zminusn

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

Fenecirctre de Von Hann Hiquest ω =12 1cos ωT e si minusω0leωleω0

0 sinon

h n =12

si n=0

14

si n=plusmn1

0 sinon

ω0=2πf 0 avec f 0=F e

2Pour

on obtient

Freacutequence de coupuredu filtre182 Hz

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre FIRmeacutethode directe (gabarit)

y n =14u n 2u nminus1 u nminus2

F e=100 Hz

f=2 Hz f=30 Hz

u n=cos 2π f n T e

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre IIRApproximants de Padeacute

Hiquest ω =I[minusω0 ω0 ]

ω =abZminus1

cZminus2

1dZminus1eZminus2

x0=randn(51)x=fminsearch(padex0)w=shypi001pig=(abs(w)ltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3)) (z^2+x(4)z+x(5))x(13)=x(13)max(abs(h))

abs(roots([1x(45)]))

function y=pade(x)w=0001pig=(wltpi10)z=exp(sqrt(shy1)w)h=(x(1)z^2+x(2)z+x(3))(z^2+x(4)z+x(5))y=norm(hshyg2)

dont on doit surveiller la stabiliteacute

F e=100

f 0=5

ω0=π

10

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Synthegravese de filtre IIRApproximants de Padeacute

Si les pocircles (racines de Z2+d Z+e=0) ont un module infeacuterieur agrave 1 le filtre est stable Il srsquoeacutecrit

y n =minusdy nminus1 minusey nminus2 au n bu nminus1 cu nminus2 u n=sin 2π ft

f=2f=10

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Compression MP3

bull 20 Codage de Huffman (compression sans perte de donneacutees binaires)

bull 80 Modegravele psychoshyacoustiquendash Filtres passe bande pour reacutecupeacuterer 32 signauxndash Changement de repreacutesentation MDCT (Modified Discrete

Cosine Transform) proche DTFTndash Suppression des freacutequences inaudiblesndash Meacutelange des freacutequences indistinguables

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Mise en œuvre(en fonction des applications)

1 Hz 4 Hz 025 s 50 millionsSystegraveme de mesures

2 kHz 8 kHz 125 micros 25 000Traitement de la parole

16 kHz 441 kHz 227 micros 4535CD audio

40 kHz 100 kHz 10 micros 2000Analyse de vibrations

25 MHz 125 MHz 80 ns 16Traitement drsquoimage

Freacutequence du signal

Nombre de cycles()F e

T e

() Nombre drsquoinstructions par seconde pour un processeur cadenceacute agrave 200 MHz

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Mise en œuvre(en fonction des applications)

bull PCbull Microcontrocircleurs

ndash traitement de la parolebull DSP agrave virgule fixe quantification en nombre de bits vitesse en Mips

ex TMS320C64x (Texas Instrument) 4800 Mips 32 bitsndash traitement drsquoimagendash analyse de vibrations

bull DSP agrave virgule flottante quantification en nombre de bits vitesse en MFlops ex TMS320C67x (Texas Instrument) 1350 Mflops 64 bitsndash cartes sonndash lecteurs CDndash teacuteleacutephones portablesndash hellip

bull FPGA (FieldshyProgrammable Gate Array)ndash Applications deacutedieacutees

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

Digital Signal Processor

Interfacemeacutemoires

Timer T0

Timer T1

Port seacuterie 0

Port seacuterie 1

HPI

Controcircleurdrsquoaccegravesmeacutemoire

Meacutemoireinterne64 K

Meacutemoirecache

8 K

Uniteacute centrale

Circuit de deacutemarrage

Meacutemoiresexternes

PCdeacutevelopshypement

CAN CNA

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT

CI carte son

Horloges

REGISTRES

UART MPUshy401

CANSeacutelection FIFO

CNAMux FIFO

DSPCNARAM

Interfaces jeux

Interface vers le bus de lrsquoordinateur

ROM

MICLINEAUX

LshyOUTRshyOUT

DshyOUT

DshyOUT 1 X 2 Y MIDIshyIN MIDIshyOUT