Вы находитесь на странице: 1из 14

UV Traitement du signal

Cours 10

Implémentation des filtres numériques

ASI 3
Contenu du cours
 Introduction

 Implémentation des filtres numériques


 Opérations élémentaires
 Réalisation des filtres RIF
 Réalisation récursive et complexité

 Réalisation des filtres RII


 Structures canoniques de réalisation
– Forme directe I
– Forme directe compacte

 Réalisations série et cascade

 Précision de la réalisation
 Sources d'erreurs
 Quelques règles

TdS 2
Introduction
 Exemple
b0 + b1 z −1
Soit un filtre numérique caractérisé par sa fonction de transfert H(z) : H ( z) =
1 + a1z −1

 Relation entrée-sortie équivalente : y ( n) = − a1 y ( n − 1) + b0 x( n) + b1x (n − 1)

La mise en œuvre de ce filtre nécessite

 deux places mémoires pour stocker y(n−1) et x(n−1)


 3 multiplications
 2 additions

 Relation entrée-sortie : 2e solution Cette 2e solution nécessite


w( n) = −a1w( n − 1) + x(n )
 une place mémoire pour stocker w(n−1)
y( n ) = b0 w(n ) + b1w( n − 1)  3 multiplications
 2 additions

Comment implémenter un système numérique de façon peu coûteuse en


complexité et quelle incidence la solution adoptée a sur la précision du calcul ?
TdS 3
Implémentation des systèmes numériques
 Opérations nécessaires à l'implémentation des filtres

Un système numérique est caractérisé par une équation aux différences


M N
y(n) = ∑ bk x(n − k ) − ∑ ak y (n − k )
k =0 k =1

Le calcul de y(n) nécessite 3 opérations élémentaires :

 Addition  Multiplication  Retard temporel

a
x(n) + x(n) +w(n) x(n) a. x(n) x(n) z−1 x(n−1)

w(n)

x(n) z−1
x(n) x(n−1)
x(n) + w(n)
w(n)
TdS 4
Filtre RIF
 Caractéristiques
 Réponse impulsionnelle  Fonction de transfert en z
 Relation entrée-sortie
N −1 N −1 h(k ) = bk 0 ≤ k ≤ N −1 N −1
y ( n) = ∑ bk x(n − k ) = ∑ h(k ) x(n − k )
k =0 k =0 N : longueur de la réponse
H ( z) = ∑ bk z −k
k =0
impulsionnelle

 Structure de réalisation (non récursive)

x(n) z−1 z−1 z−1


h(0) h(1) h(2) h(N−2) h(N−1)

+ + + + y(n)

Complexité

 N−1 places mémoires (pour stocker les termes x(n−k), k = 1,…, N−1)
 N−1 additions
 N multiplications
TdS 5
Filtre RIF filtre à phase linéaire
Les filtres à phase linéaire sont des filtres dont la réponse impulsionnelle h(n) est soit symétrique
soit anti-symétrique. Cette propriété peut être exploitée pour réduire la complexité de la réalisation.

 Symétrie h( n) = h( N − 1 − n )
avec 0 ≤ n ≤ N −1
 Anti-symétrie 2
h ( n ) = − h ( N − 1 − n)

Exemple : N impair et h(n) symétrique


N −1−1
N −1 N −1
2 N − 1  N −1
y ( n) = ∑ h(k )x (n − k ) y ( n) = ∑ h( k ) . x( n − k ) + h  . x + ∑ h ( k ) . x (n − k )
k =0 k =0  2   2  N +1
k=
2

N −1−1
2 N −1 N −1
Comme h(n) = h(N−1−n), on en déduit : y ( n) = ∑ h( k ) . ( x( n − k ) + x (n − ( N − 1) − k ) ) + h 2  .x  2 
k =0

Complexité

 N−1 mémoires pour les x(n−k)  N + 1 multiplications


2
 N−1 additions
TdS 6
Filtre RII
 Caractéristiques
M Fonction de transfert sous forme
N ( z)
∑ bi z − i de fraction rationnelle en z
H ( z) = = i =0
D( z) N
1+ ∑ aj z− j RII = Réponse impulsionnelle infinie
j =1

 Structures de réalisation canonique


Décomposition du système comme la mise w(n) y (n)
en série de deux systèmes numériques x(n)
H1(z) H2(z)
 Forme directe I

 Relations entrée-sortie
M M M
 H1( z ) = N ( z) = ∑ bi z −i W ( z) = ∑ bi z −i X ( z ) w(n) = ∑ bi x (n − i )
i= 0 i=0 i=0

H2 ( z) = 1 = 1 N N
 D( z) N Y (z ) + ∑ a j z − jY ( z ) = W ( z) y ( n ) = − ∑ a j y (n − j ) + w (n )
1+ ∑ a j z− j j =1 j =1
j =1
TdS 7
Filtre RII
 Structure de réalisation : forme directe I
 Relations entrée-sortie

 Partie non récursive  Partie récursive


N
M
w(n) = ∑ bi x (n − i ) y ( n ) = − ∑ a j y (n − j ) + w (n )
j =1
i=0

b0 w(n)
x(n) + + y(n)

z−1 z−1
b1 − a1
+ + Complexité
z−1 z−1
b2 − a2  M+N mémoires (pour stocker
+ +
x(n−i), i=1,…, M et y(n−j), j = 1, …, N)
bM−1 − aN−1  M+N additions
+ +
z−1 z−1  M+N+1 multiplications
bM − aN

TdS 8
Filtre RII
 Structure de réalisation : forme directe II (compacte)
 Relations entrée-sortie
1 = 1 N M
 H1 ( z ) =
D( z ) N w (n ) = − ∑ a j w (n − j ) + x (n )  H 2 ( z ) = N (z ) = ∑ bi z −i
1 + ∑ a j z− j j =1 i =0
j =1

M
w(n) b0 y ( n) = ∑ bi w( n − i)
x(n) + + y(n) i =0

z-1 Complexité
− a1 b1
+
+
z-1  max(M, N) mémoires pour stocker w(n−i)
− a2 b2  M+N additions
+
+
 M+N+1 multiplications
− aM-1 bM−1
+
+
 Problèmes des réalisations récursives
z-1
bM
 Précision du résultat y(n) sensible aux erreurs
+ − aN−1 de quantification des coefficients ai et bj

z-1  Sensibilité grande selon l'ordre de l'équation aux


− aN différences et selon la structure de réalisation
TdS 9
Filtre RII
 Décomposition en série (structure cascade)
max(N , M ) 1 − β −1
iz
Elle est obtenue en factorisant le numérateur et le dénominateur de H(z) H ( z ) = C ∏
i =1 1 − λi z −1

On décompose H(z) sous la forme de produit de fonctions de transfert élémentaires Hj(z)

K
H ( z) = C ∏ H j ( z) x(n) y (n)

j =1 C H1(z) H2(z) HK(z)

 FT élémentaires
 FT du 2e ordre
 FT du 1er ordre
1 + b j1 z −1 + b j 2 z − 2
H j ( z) =
1 + a j1 z −1 + a j 2 z −2
1− β j z −1
H j ( z) = pour les pôles ou zéros complexes conjugués
1 − λ j z −1
+ +
+ + −aj1 z−1 bj1
z−1 + +
λj −βj
z−1 bj2
−aj2
TdS 10
Filtre RII
 Décomposition en parallèle (structure parallèle)
N Ai
Elle est obtenue par décomposition de H(z) en éléments simples : H ( z) = D + ∑ −1
(N ≥ M)
i =1 1 − λi z

Autre écriture
D
x(n)
K + y (n)
H ( z) = D + ∑Hj H1(z)
j =1

HK(z)
 FT du 2e ordre
 FT élémentaires
b j 0 + b j1 z −1
 FT du 1er ordre H j ( z) =
1 + a j1 z −1 + a j 2 z −2
Aj
H j (z) = bj0
1− λ j z −1 + +
Αj z−1
+ −aj1 bj1
+
z−1
λj z−1
TdS −aj2
11
Précision du filtre
 Sources d'erreur dans l'implémentation des filtres
 Erreurs de quantification des coefficients du filtre

La sensibilité du filtre par rapport à la quantification dépend de sa structure de


réalisation et de la localisation des pôles et zéros. La quantification introduit une
modification des coefficients du filtre qui se traduit par une modification des pôles et
des zéros et donc de la réponse en fréquence

 Bruit de calcul au niveau des opérations élémentaires

 Bruits de conversion analogique-numérique du signal d'entrée x(n)

 Erreur de quantification : cas général

Erreur de quantification E Ea = Q ( a ) − a avec a valeur à quantifier, Q(a) valeur quantifiée

L'erreur de quantification dépend :

 du type de quantification : quantification par troncature ou par arrondi


 du nombre de bits utilisés pour coder les nombres
 du type de codage des nombres : virgule fixe ou virgule flottante
TdS 12
Précision du filtre
 Amélioration de la précision : quelques règles

Le bruit de calcul peut être atténué en agissant sur les paramètres suivants :

 utiliser une structure de réalisation en cascade ou en parallèle

 appairer les pôles et zéros pour constituer une cellule élémentaire


Construire des structures où le pôle le plus proche du cercle unité
est appairé avec le zéro le plus proche de lui.

 ordonner judicieusement les cellules pour une structure en cascade

Mettre l'ensemble des structures en cascade dans l'ordre de proximité


(croissante ou décroissante) des pôles par rapport au cercle unité

 minimiser les problèmes de débordement (éviter l'écrêtage des nombres dû à la limitation


de la valeur maximale pouvant être stockée dans une mémoire interne du processeur)

TdS 13
Références bibliographiques

1. M. Bellanger, " Traitement numérique du signal", Edition Dunod, 1993.

2. G. Blanchet, M. Charbit "Traitement numérique du signal", Edition Hermès, 1998

3. A. Quinquis "Le traitement du signal sous Matlab", Edition Hermès, 2000

4. F. Truchetet "Traitement linéaire du signal numérique ", Edition Hermès, 1998

TdS 14

Вам также может понравиться