Polycopié "bancs de filtres"
Transcription
Polycopié "bancs de filtres"
Bancs de …ltres J.Prado 8 juin 2006 ii Table des matières Introduction 1.1 Introduction . . . . . . . . . . . . . . . . . . 1.2 Gain de codage . . . . . . . . . . . . . . . . 1.2.1 Rappel de la quanti…cation uniforme 1.2.2 Quanti…cation en sous bandes . . . . 1.2.3 Comparaison des quanti…cations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 5 6 7 9 Filtrage Numérique. 11 2.3 Propriétés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3.1 Invariance temporelle. . . . . . . . . . . . . . . . . . . 12 2.3.2 Causalité. . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3.3 Linéarité. . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 Filtres caractéristiques. . . . . . . . . . . . . . . . . . . . . . 12 2.4.1 Filtres non-récursifs causaux. . . . . . . . . . . . . . . 12 2.4.2 Filtres récursifs causaux. . . . . . . . . . . . . . . . . . 13 2.4.3 Eléments de réalisations. . . . . . . . . . . . . . . . . . 13 2.5 Analyse temporelle. . . . . . . . . . . . . . . . . . . . . . . . 13 2.5.1 Impulsion unité . . . . . . . . . . . . . . . . . . . . . . 14 2.5.2 Echelon unité. . . . . . . . . . . . . . . . . . . . . . . 15 2.5.3 Rampe unité. . . . . . . . . . . . . . . . . . . . . . . . 15 2.5.4 Convolution. . . . . . . . . . . . . . . . . . . . . . . . 16 2.5.5 Stabilité. . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.6 Utilisation de la transformée en z. . . . . . . . . . . . . . . . 17 2.6.1 Fonction de transfert discrète. . . . . . . . . . . . . . . 17 2.6.2 Estimation de H(z) à partir de l’équation récurrente. 17 2.6.3 Stabilité. . . . . . . . . . . . . . . . . . . . . . . . . . 18 2.6.4 Réponse en fréquence. . . . . . . . . . . . . . . . . . . 19 2.7 Quelques notations et dé…nitions . . . . . . . . . . . . . . . . 21 2.7.1 Les polynômes . . . . . . . . . . . . . . . . . . . . . . 21 2.7.2 Les conjugaisons complexes . . . . . . . . . . . . . . . 21 2.7.3 Les symétries . . . . . . . . . . . . . . . . . . . . . . . 22 iii iv TABLE DES MATIÈRES Synthèse des …ltres non-récursifs. 2.8 Caractéristiques des …ltres à phase linéaire. 2.8.1 Cas 1. . . . . . . . . . . . . . . . . . 2.8.2 Cas 2. . . . . . . . . . . . . . . . . . 2.9 Comportement fréquentiel. . . . . . . . . . . 2.9.1 Réponse symétrique. N impair. . . . 2.9.2 Réponse symétrique. N pair. . . . . 2.9.3 Réponse antisymétrique. N impair. . 2.9.4 Réponse antisymétrique. N pair. . . 2.10 Position des zéros du …ltre à phase linéaire. 2.10.1 Zéro complexe hors du cercle unié. . 2.10.2 Zéro complexe sur le cercle unité. . . 2.10.3 Zéro réel hors du cercle unité. . . . . 2.10.4 Zéro réel sur le cercle unité. . . . . . 2.11 Méthodes de synthèse des …ltres RIF. . . . 2.11.1 Méthode de la fenêtre. . . . . . . . . 2.11.2 Méthode aux valeurs propres. . . . . 2.11.3 Filtres maximalement plats . . . . . 2.11.4 Méthode itérative. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 26 26 28 28 29 29 29 30 30 30 30 31 31 31 31 40 43 44 Conversion de fréquence 51 2.12 Conversion de fréquence . . . . . . . . . . . . . . . . . . . . . 51 2.12.1 Réduction d’un facteur M . . . . . . . . . . . . . . . . 51 2.12.2 Interpolation par un facteur L . . . . . . . . . . . . . 54 2.12.3 Conversion d’un facteur L/M . . . . . . . . . . . . . . 57 2.13 Notion de composantes polyphases . . . . . . . . . . . . . . . 58 2.13.1 Implantation polyphase et notations conventionnelles . 58 2.13.2 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . 59 2.13.3 Propriétés . . . . . . . . . . . . . . . . . . . . . . . . . 61 Filtrage Multicadence 2.14 Traitement en sous-bandes . . . . . . . . . . . . . . . . . . . . 2.14.1 Banc de …ltres . . . . . . . . . . . . . . . . . . . . . . 2.14.2 Reconstruction . . . . . . . . . . . . . . . . . . . . . . 2.15 Banc de …ltres à M voies . . . . . . . . . . . . . . . . . . . . 2.15.1 Erreur de reconstruction . . . . . . . . . . . . . . . . . 2.15.2 Résolution directe . . . . . . . . . . . . . . . . . . . . 2.15.3 Résolution polyphase . . . . . . . . . . . . . . . . . . . 2.15.4 Relation entre les matrices polyphase et de modulation 2.15.5 Condition générale de reconstruction parfaite . . . . . 2.15.6 Simpli…cation du problème . . . . . . . . . . . . . . . 2.16 Banc de …ltres à 2 voies . . . . . . . . . . . . . . . . . . . . . 2.16.1 Analyse du signal reconstruit . . . . . . . . . . . . . . 2.16.2 Théorème de la reconstruction parfaite . . . . . . . . . 65 65 65 67 68 68 68 69 70 71 74 74 75 77 TABLE DES MATIÈRES 2.16.3 Types de solutions . . . . 2.16.4 Filtres QMF . . . . . . . 2.16.5 Banc orthogonal (CQF) . 2.16.6 Banc biorthogonal . . . . 2.17 Exemples de bancs de …ltres à M 2.17.1 Par construction . . . . . 2.17.2 Banc de …ltres et TFD . . 2.17.3 Banc de …ltres modulés . v . . . . . . . . . . . . voies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 78 83 86 91 91 94 96 vi TABLE DES MATIÈRES Liste des Figures 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 Découpage en 4 bandes. . . . . Banc de …ltre à 4 voies. . . . . Sous échantillonnage. . . . . . . Reconstruction. . . . . . . . . . Banc à 2 voies. . . . . . . . . . Quanti…cation uniforme. . . . . Quanti…cation en sous-bandes. Modèle de la voie k. . . . . . . 2.9 2.10 2.11 2.12 2.13 2.14 2.15 2.16 2.17 Filtre Numérique . . . . . . . Elément de retard . . . . . . Elément additionneur . . . . Elément multiplieur . . . . . Impulsion unité . . . . . . . . Echelon unité . . . . . . . . . Rampe unité . . . . . . . . . Domaine de stabilité . . . . . Interprétation géométrique de 2.18 2.19 2.20 2.21 2.22 2.23 2.24 2.25 2.26 2.27 2.28 2.29 2.30 2.31 Réponse symétrique, N impair . . . Réponse symétrique, N pair . . . . Réponse antisymétrique, N impair Réponse antisymétrique, N pair . . Dé…nition du gabarit . . . . . . . . Gabarit idéal . . . . . . . . . . . . Réponse impulsionnelle . . . . . . Troncature temporelle . . . . . . . Phénomène de Gibbs . . . . . . . . Fenêtre rectangulaire . . . . . . . . Fenêtre de Bartlett . . . . . . . . . Fenêtre de Hann . . . . . . . . . . Fenêtre de Hamming . . . . . . . . Fenêtre de Blackman . . . . . . . . vii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . la réponse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 4 5 5 6 7 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . en fréquence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 13 14 14 14 15 15 18 21 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 28 28 28 32 32 33 33 34 36 36 37 37 38 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . LISTE DES FIGURES 1 2.32 2.33 2.34 2.35 2.36 2.37 Fenêtre de Kaiser . . . . . . . . . . . . . . Spectre pour di¤érentes valeurs de . . . Gabarit passe-bas . . . . . . . . . . . . . . Gabarit passe-bande . . . . . . . . . . . . Dé…nition du gabarit maximalement plat. Filtre maximalement plat K = 17, L = 9. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 39 39 40 43 44 2.38 2.39 2.40 2.41 2.42 2.43 2.44 2.45 2.46 2.47 2.48 2.49 2.50 2.51 2.52 2.53 Principe de réduction de fréquence . . . . . . . . . . . . . . . Filtrage antirepliement . . . . . . . . . . . . . . . . . . . . . . Spectre du signal après sous-échantillonnage . . . . . . . . . . Train d’impulsions équivalent pour le sous-échantillonnage . . Principe de l’augmentation de fréquence . . . . . . . . . . . . Signal et spectre avant suréchantillonnage . . . . . . . . . . . Signal et spectre après insertion de L 1 zéros . . . . . . . . Signal et spectre après suréchantillonnage . . . . . . . . . . . Principe de base de la conversion de fréquence . . . . . . . . . Décimation : implantation directe. . . . . . . . . . . . . . . . Décimation : implantation polyphase. . . . . . . . . . . . . . Interpolation : implantation polyphase. . . . . . . . . . . . . Commutativité décimation-interpolation . . . . . . . . . . . . Illustration de la permutation …ltre-changement de fréquence Commutation et linéarité . . . . . . . . . . . . . . . . . . . . Permutation décimation-interpolation. . . . . . . . . . . . . . 52 52 53 53 54 55 55 56 57 60 60 61 61 62 62 63 2.54 2.55 2.56 2.57 2.58 2.59 2.60 2.61 2.62 2.63 2.64 2.65 2.66 2.67 2.68 2.69 2.70 2.71 2.72 2.73 Principe du traitement en sous-bandes . . . . . . Banc de …ltres (analyse et synthèse) . . . . . . . Structure d’implantation d’un banc de …ltres. . . Réalisation polyphase. . . . . . . . . . . . . . . . Réduction de schéma. . . . . . . . . . . . . . . . Schéma pour la reconstruction parfaite. . . . . . Structure pyramidale . . . . . . . . . . . . . . . . Banc de …ltres à deux voies . . . . . . . . . . . . Stucture polyphase d’un banc de 2 …ltres . . . . Synthèse de …ltre pour la reconstruction parfaite V0 (!) . . . . . . . . . . . . . . . . . . . . . . . . V0 (2!) . . . . . . . . . . . . . . . . . . . . . . . . Banc biorthogonal. . . . . . . . . . . . . . . . . . Exemple de banc de …ltres à M voies. . . . . . . Banc de …ltres et TFD. . . . . . . . . . . . . . . Banc de …ltres TFD à 8 voies. . . . . . . . . . . . Transformée avec recouvrement. . . . . . . . . . Disposition des U ej2 f . . . . . . . . . . . . . . Filtres modulés à 8 voies. . . . . . . . . . . . . . Gain total T ej2 f . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 . 66 . 67 . 70 . 71 . 72 . 75 . 75 . 79 . 84 . 87 . 88 . 92 . 92 . 95 . 95 . 96 . 99 . 100 . 101 2 LISTE DES FIGURES Introduction 1.1 Introduction Les bancs de …ltres sont un outil du traitement de signal qui permet, entre autre, d’obtenir une représentation particulière de l’information contenue dans un signal. Contrairement à la transformée de Fourier qui permet d’obtenir une représentation dans le domaine spectral, la représentation donnée par les bancs de …ltres reste du domaine temporel. L’idée de base est d’obtenir une série de signaux représentatifs d’une bande de fréquence du signal original. En simpli…ant et en supposant que le …ltre idéal existe, le signal est …ltré par un ensemble de M …ltres passe-bandes à supports disjoints (cf …gure ci-dessous), ce qui permet d’obtenir M signaux correspondant chacun à une partie du spectre du signal original. |X(f)| Filtre 1 Filtre 3 Filtre 2 Filtre 4 f Figure 1.1: Découpage en 4 bandes. Dans une telle représentation, à un échantillon de l’entrée correspondent 4 échantillons en sortie. Il y a redondance de l’information car chaque xkn n’occupe qu’une partie du spectre. Les xkn sont des signaux à bande étroite, on doit donc pouvoir les échantillonner à une fréquence plus basse que la fréquence d’échantillonnage initiale sans perte d’information. Une simpli…cation dans le traitement consiste à dé…nir des largeurs de bandes identiques pour chaque …ltre, ainsi pour un traitement en M voies dé…nir la largeur 3 4 INTRODUCTION xn x n1 Filtre 1 x 2n Filtre 2 x3 n Filtre 3 x n4 Filtre 4 Figure 1.2: Banc de …ltre à 4 voies. de bande à 1=2M permet de ramener la fréquence d’échantillonnage dans chaque sous bande à 1=M (…gure 1.3). Le sous échantillonnage provoque des repliements de spectre, mais sans recouvrement si les …ltres sont idéaux. xn Filtre 1 Filtre 2 x n1 x 2n M M x3 Filtre 3 Filtre 4 n x n4 M M Figure 1.3: Sous échantillonnage. Après avoir e¤ectuer un traitement sur chacune des sous bandes, le but est de pouvoir reconstituer un signal à la même fréquence que le signal original. Le principe est donné …gure 1.4 en supposant qu’il n’y a pas de traitement. Un tel banc de …ltres sera dit uniforme (largeurs de bandes identiques) à décimation critique (facteur de sous échantillonnage égal au nombre de bandes) et à reconstruction parfaite (^ xn = xn D ). Sachant que dans la pratique les …ltres ne sont pas idéaux, il y aura repliement avec recouvrement au curs du sous échantillonnage. Cependant on dispose ici de M voies, donc M informations de repliement, il est donc intéressant de se poser la question de l’existence d’un banc de …ltres d’analyse (…ltres 1 à 4 sur les …gures) et d’un banc de …ltres de synthèse (…ltres 5 à 8) 1.2. GAIN DE CODAGE xn 5 F iltre 1 M M F iltre 5 F iltre 2 M M F iltre 6 F iltre 3 M M F iltre 7 F iltre 4 M M F iltre 8 ^x n Figure 1.4: Reconstruction. tels que le dépliement soit possible, i.e. la reconstruction parfaite. Un exemple simple est donné …gure 1.5 xn z a 2 c e 2 -1 z b 2 d ^ xn f 2 -1 Figure 1.5: Banc à 2 voies. Dans cet exemple les signaux aux di¤érents points du schéma sont dé…nis comme suit: a b c d e f x2 x1 x4 x3 x2 x1 x1 x0 x2 x1 0 0 x0 x 1 x0 x 1 x0 x 1 x 1 x 2 x 2 x 3 0 0 Il est facile de voir que la sortie x ^n (= fn + en 1.2 x x x x x x 2 3 4 35 1) 2 3 est alors égal à xn 1. Gain de codage Une application intéressante des bancs de …ltres est le codage du signal. A…n de montrer l’é¢ cacité du codage dit en sous-bande, nous pouvons estimer le gain de codage obtenu par rapport au codage pleine bande. 6 INTRODUCTION 1.2.1 Rappel de la quanti…cation uniforme On rappelle brièvement que la quanti…cation uniforme consiste à associer à un échantillon xn d’amplitude continue la valeur k (codée sur b bits) telle que yn = kq, où q est le pas de quanti…cation, corresponde à la valeur quanti…ée (numérisée) de xn (…g1.6): x n yn Q Figure 1.6: Quanti…cation uniforme. On rappelle que cette quanti…cation est modélisée par l’ajout d’un bruit q2 blanc "n , de puissance 2 = 12 , ainsi: yn = xn + "n (1.1) La représentation binaire étant purement conventionnelle, on choisit la représentation générale suivante (le bit de signe n’est pas représenté): b bits yn = b0 2l ! b1 bb 2(l+1) 1 b = q l représente la dynamique, b représente la précision. Dans le cas d’une quanti…cation par arrondi, l’erreur "n est centrée, telle que: q 2 "n < q 2 (1.2) On obtient ainsi: q2 n k 12 22(l+1) q2 = = 12 12 E ["n "k ] = 2 2b La relation entre 2x , variance du signal, et b dépend des statistiques de xn . On rappelle que la relation générale est de la forme: 2 = c2 2b 2 x où c vaut 0:25 si xn est à répartition uniforme entre 0:75 si xn est à répartition gaussienne (règle des 3 ). (1.3) 2(l+1) et 2(l+1) , et 1.2. GAIN DE CODAGE xn 7 H0 M Q0 M F0 H1 M Q1 M F1 H M-1 M Q M-1 M FM-1 ^x n Figure 1.7: Quanti…cation en sous-bandes. 1.2.2 Quanti…cation en sous bandes Considérons le banc de …ltres à reconstuction parfaite de la …gure 1.7: Les réponses en fréquences des …ltres supposés idéaux sont données par: 8 p k j!j (k+1) < M M M j! j! = Hk e = Fk e (1.4) k = 0; ;M 1 : 0 ailleurs Chaque quanti…cateur Qk correspond à un codage sur bk bits dont le MSB à la valeur 2lk . La modélisation par source de brtuit additive donne le schéma suivant: xn x Hk (n) k M vk Qk q xn x Hk (n) k M vk M Fk M Fk (n) k Figure 1.8: Modèle de la voie k. La source de bruit qk (n) de variance 2qk donne en sortie une contribution 2 F ej! 2 )j q j k( aubruit total qui vaut k M . On considère de plus que les bruits entre voies sont non corrélés: E [qk (n) qj (n)] = 2 qk k j (1.5) Sans quanti…cation, le banc de …ltres étant supposé idéal, x ^n = xn . Avec quanti…cation, le bruit équivalent sur la sortie est de variance: 2 q = M 1 1 X M k=0 2 qk (1.6) 8 INTRODUCTION En codage on …xe un débit binaire qui correspond à un nombre moyen b de bits à transmettre. Le problème est de savoir comment répartir ces b bits sur les M sous-bandes de façon à minimiser 2q . Soit bk le nombre de bits sur la voie k: b= M 1 1 X bk M (1.7) k=0 C’est aussi le nombre moyen de bits correspondant au codage de xn . La logique veut que bk soit supérieur à b si la sous bande k contient beaucoup d’énergie et inversement que bk soit inférieur à b si la sous bande k contient peu d’énergie. La minimisation de la variance du bruit de sortie tient dans l’inégalité qui lie une moyenne arithmétique (MA) à une moyenne géométrique (MG): M 1 1 X ak M k=0 !1=M M Y1 MG = ak MA = k=0 Il s’avère que M A > M G, l’égalité n’ayant lieu que si les ak sont tous égaux. Supposons que xn soit SSL (stationnaire au sens large) centré et de variance 2x , le banc de …ltres étant idéal cette variance est aussi: 2 x = M 1 1 X M 2 xk (1.8) k=0 où 2 xk est la variance de xk (n). De même chaque vk (n) (cf …g 1.8) est SSL centré et de variance 2vk = 2 . Chaque quanti…cateur Q étant uniforme, on en déduit d’après 1.3 que: k xk 2 qk = ck 2 2bk 2 xk (1.9) Pour simpli…er, on prendra ck = c =constante. La variance totale du bruit en sortie donnée par 1.6 est la moyenne arithmétique des 2qk , notée M A 2qk . Cette moyenne étant supérieure ou 1.2. GAIN DE CODAGE 9 égale à la moyenne géométrique on a successivement: 2 q > MG 2 qk M Y1 = k=0 2 q 2 q > c2 > c2 2 M 2b PM 1 k=0 M Y1 bk 2 qk !1=M 2 xk k=0 M Y1 2 xk k=0 M Y1 =c 2 2bk 2 xk k=0 !1=M !1=M !1=M (1.10) L’égalité sera atteinte ssi : 2qk = 2q 8k, la variance du bruit de quanti…cation est la même dans chaque sous-bande. Notons 2q;SB cette variance: 2 q;SB = 2 qk = c2 M Y1 2b 2 xk k=0 Si l’on compare 1.9 et 1.11, il vient : 0 B B B bk = b + 0:5 log2 B B B @ 2 xk M Y1 2 xk k=0 !1=M (1.11) 1 C C C C !1=M C C A (1.12) Le résultat 1.12 constitue la loi de’attribution du nombre de bits de quanti…cation dans chaque sous-bande. 1.2.3 Comparaison des quanti…cations Si l’on …xe b à la même valeur (quanti…cateur uniforme et en sous-bandes), on a: 2 q;U N I 2 q;SB = c2 = 2 qk 2b 2 x = c2 2b M Y1 k=0 2 xk !1=M et le gain de codage G donné par : G= 2 q;U N I 2 q;SB 2 x = M Y1 k=0 2 xk !1=M (1.13) 10 INTRODUCTION Compte-tenu de 1.8, le gain de codage devient le rapport d’une M A à une M G: M A 2xk >1 (1.14) G= M G 2xk Dans la mesure où, en règle générale, les 2xk sont di¤érents, le résultat 1.14 montre que le gain de codage est supérieur à 1. Il n’existe pas de théorème montrant que ce gain augmente avec M le nombre de sous-bandes. En e¤et, si l’on augmente M alors bk diminue et tend vers 0, ce qui n’a guère de sens. Par contre si l’on considère le codeur optimal donné par la transformée de Karhunen-Loeve, on montre que : lim M !1 2 q;KL (M ) = lim M !1 2 q;SB (M ) (1.15) On rappelle brièvement que dans ce contexte, la transformation de KarhunenLoeve consiste à trouver une matrice T telle que : E vn vnT = Rvv (0) = T Rxx (0) T T où : Vn = [v0 (n) v1 (n) Xn = [x (M n) x (M n vM 1) T 1 (n)] x (M n M + 1)]T L’optimalité est atteinte par la matrice T qui permet d’obtenir Rvv (0) diagonale, ainsi la matrice T T apparaît telle que ses colonnes sont les vecteurs propres de la matrice Rxx (0). La matrice T dépendant du signal, il est très di¢ cile d’exploiter ce résultat. Filtrage Numérique. Un …ltre numérique tout comme un …ltre analogique est composé d’éléments interconnectés, les éléments sont ici des registres à décalage, multiplieurs, additionneurs,... L’analyse d’un …ltre numérique consiste à déterminer la réponse à une excitation donnée. La conception est la procédure qui comprend la synthèse et la réalisation de telle sorte que le …ltre obtenu réponde à des contraintes données (réponse en amplitude, en phase,...). Pour des raisons de réalisabilité physique et d’utilisation en temps réel les …ltres considérés auront nécessairement une réponse impulsionnelle causale, ce qui signi…e qu’un échantillon du signal de sortie est calculable à partir d’échantillons de l’entrée et/ou de la sortie ne dépendant que des instants présent et/ou passé, mais jamais du futur. Cette partie sera consacrée à l’analyse des …ltres numériques. On utilisera indi¤éremment les notations x (nT ) ou xn . x (nT ) signi…ant que le signal est issu de la numérisation d’un signal continu échantillonné avec la période T , xn étant simplement une suite numérique ou à la normalisation de l’échelle des temps (t=T ). 2.3 Propriétés. Un …ltre numérique peut être représenté de la façon suivante (…gure 2.9): Figure 2.9: Filtre Numérique L’entrée xn est l’excitation, la sortie yn est la réponse. Pour dé…nir un …ltre numérique, on doit donner certaines règles de correspondance entre l’entrée et la sortie. Soit R la relation correspondante: 11 12 2.3.1 FILTRAGE NUMÉRIQUE. Invariance temporelle. Un …ltre numérique est invariant dans le temps si les paramètres internes qui le dé…nissent sont invariants dans le temps. Cela signi…e que la réponse à la même excitation sera toujours la même quelquesoit l’instant d’application de cette excitation. Soit xn = yn = 0 pour n < 0, alors: yn 2.3.2 m = R [xn m] (2.16) Causalité. Un …ltre numérique est dit causal si sa réponse à un instant spéci…que est indépendante des valeurs futures de l’excitation. Cela se traduit par: R[x1;n ] = R[x2;n ] quelquesoit n k, pour toutes entres x1 et x2 satisfaisant: x1;n = x2;n n k (2.17) x1;n 6= x2;n n>k 2.3.3 Linéarité. Un …ltre numérique est dit linéaire s’il satisfait à: R [ x1;n + x2;n ] = R [x1;n ] + R [x2;n ] (2.18) quelquesoit , , x1;n et x2;n . L’étude des …ltres numériques qui va suivre est celle des …ltres causaux, linéaires et invariants. 2.4 Filtres caractéristiques. On distinguera deux grands types de …ltres, les …ltres non-récursifs et les …ltres récursifs. Ils sont solutions d’équations récurrentes de la forme: yn = X ai xn X i i bj yn j (2.19) j Inversement à l’équation (2.19) ne correspond pas forcément une solution de type linéaire invariante qui caractérise un …ltre numérique. La solution linéaire invariante correspond à la possibilité d’exprimer la sortie comme convolution de l’entrée et de la réponse impulsionnelle du …ltre. 2.4.1 Filtres non-récursifs causaux. Ils correspondent à la forme particulière: yn = N X1 i=0 ai xn i (2.20) 2.5. ANALYSE TEMPORELLE. 13 où les ai sont des constantes. ai = 0 pour i < 0 caractérise la causalité. 2.4.2 Filtres récursifs causaux. Un …ltre récursif se caractérise par le fait que sa réponse dépend de l’entrée et de la sortie aux instants précédents, si on se restreint aux …ltres causaux, linéaires et invariants. L’expression de la sortie à l’instant n se traduit par: yn = N X1 ai xn i i=0 M X1 bj y n j (2.21) j=1 On remarque que les …ltres non-récursifs sont un cas particulier des …ltres récursifs (bj = 0 quelquesoit j 6= 0). 2.4.3 Eléments de réalisations. Les relations de …ltrage nous permettent de dé…nir des cellules élémentaires de réalisation. Retard. L’élément de retard se traduit par la relation de …ltrage yn = R[xn ] = xn (…gure 2.10). 1 Figure 2.10: Elément de retard Additionneur. Il réalise l’opération yn = R[xi;n ] = Multiplieur. Pm i=1 xi;n (…gure 2.11). Il réalise l’opération yn = R[xn ] = xn (…gure 2.12). 2.5 Analyse temporelle. L’analyse temporelle s’e¤ectue à l’aide des signaux d’entrée élémentaires tels que impulsion unité, échelon unité, : : : Les signaux échantillonnés sont 14 FILTRAGE NUMÉRIQUE. Figure 2.11: Elément additionneur Figure 2.12: Elément multiplieur généralement obtenus à partir de leur équivalent continu en remplaçant t par nT , cependant cette substitution n’a pas de sens pour certains d’entre eux. 2.5.1 Impulsion unité Elle est dé…nie par: n = 1 0 n=0 n 6= 0 Son rôle est équivalent à celui de la distribution continus (…gure 2.13). Figure 2.13: Impulsion unité (2.22) pour les systèmes 2.5. ANALYSE TEMPORELLE. 2.5.2 15 Echelon unité. Il est dé…ni par (…gure 2.14): un = 1 0 n 0 n<0 (2.23) Figure 2.14: Echelon unité 2.5.3 Rampe unité. Elle est dé…nie par (…gure 2.15): rn = n 0 n 0 n<0 (2.24) Figure 2.15: Rampe unité Quoique simple, l’analyse temporelle est souvent fastidieuse. Elle permet cependant d’avoir une idée du comportement du …ltre numérique. 16 FILTRAGE NUMÉRIQUE. 2.5.4 Convolution. La relation de convolution permet d’exprimer la sortie du …ltre l’aide de sa réponse impulsionnelle. Soit une excitation xn quelconque. Cette excitation peut être considérée comme la somme de signaux indépendants qui valent xk à l’instant k (ou kT ) et 0 ailleurs. +1 X xn = xk n k (2.25) k= 1 Soit un …ltre numérique linéaire, invariant dé…ni par sa réponse impulsionnelle: R[ n ] = hn P Par utilisation de la linéarité et de l’invariance on obtient: yn = +1 k= 1 xk hn Cette relation importante permet de calculer la réponse d’un …ltre à une entrée quelconque. Elle prendra les formes dé…nies par les équations (2.20) ou (2.21) selon que le …ltre est à réponse impulsionnelle …nie (RIF) ou à réponse impusionnelle in…nie (RII). yn = yn = NP1 k=0 1 P hk xn hk xn k k RIF RII k=0 2.5.5 Stabilité. Un …ltre numérique, qu’il soit causal ou non, est dit stable si et seulement si à toute entre bornée correspond une sortie bornée. jxn j < 1 8n =) jyn j < 1 8n. Pour un …ltre numérique linéaire et invariant cela se traduit sur sa réponse impulsionnelle par: +1 X k= 1 jhk j < 1 (2.26) Si de plus il est causal, la relation devient : +1 X k=0 jhk j < 1 Ceci constitue une condition nécessaire et su¢ sante de stabilité. (2.27) k 2.6. UTILISATION DE LA TRANSFORMÉE EN Z. 2.6 17 Utilisation de la transformée en z. L’utilisation de la transformée en z permet de caractériser un …ltre numérique par sa fonction de transfert qui est, par dé…nition, la transformée en z de sa réponse impulsionnelle. Elle a pour les systèmes échantillonnés - ou numériques - le même rôle que la fonction de transfert - transformée de Laplace - pour les systèmes continus; elle permet une analyse temporelle et/ou fréquentielle des …ltres numériques. 2.6.1 Fonction de transfert discrète. Soit H(z) = Z[hn ], la transformée en z de la réponse impulsionnelle d’un …ltre numérique linéaire invariant. Pour une entrée quelconque xn , la sortie du …ltre s’exprime par: X yn = xk hn k k P Soit: Y (z) = n hn z n = H(z)X(z), pourvu que X (z), Y (z) et H (z) aient un domaine de convergence commun. La fonction de transfert est donc aussi le rapport des transformées en z de l’entrée et de la sortie. 2.6.2 Estimation de H(z) à partir de l’équation récurrente. L’équation récurrente qui dé…nit la relation entrée sortie d’un …ltre numérique linéaire invariant et causal est donnée par (2.28): yn = N X1 ai xn i i=0 M X1 bj y n j (2.28) j=1 En prenant la transformée en z de chaque membre on en déduit: PN 1 i Y (z) i=0 ai z H(z) = = P 1 j X(z) 1+ M j=1 bj z Dans la mesure où la notion de causalité est importante, du moins en monodimensionnel, la transformée en z considérée est ici la transformée monolatérale. La fonction de transfert qui est un rapport de polynômes se caractérise par ses zéros, racines du numérateur et ses pôles, racines du dénominateur: QN z 1 zi i=1 1 (2.29) H(z) = a0 QM z 1 zj ) j=1 (1 Dans le cas d’un …ltre non-récursif, les coe¢ cients bj sont nuls. La fonction de transfert se réduit alors un polynôme en z: H(z) = N X1 i=0 ai z i (2.30) 18 2.6.3 FILTRAGE NUMÉRIQUE. Stabilité. La fonction de transfert d’un …ltre numérique récursif linéaire invariant causal s’exprime comme le rapport de deux polynômes, la stabilité ne dépend que des pôles de cette fonction. Une condition nécessaire et su¢ sante pour que H(z) représente un …ltre causal et stable est que ses pôles soient situés à l’intérieur du cercle unité (2.16). Figure 2.16: Domaine de stabilité Critère de stabilité: Un critère algébrique de stabilité permet de déterminer la stabilité d’un …ltre sans avoir à calculer explicitement les pôles de la fonction de transfert. Un critère dû à Jury est le suivant: Pm (z) m j. Soit H(z) = N j=0 bj z D(z) , avec D(z) = On suppose b0 > 0, et on utilise les coe¢ cients de D(z) pour construire un tableau de 2m 3 lignes de la façon suivante: ligne ligne ligne ligne ligne ligne ::: ligne 1 2 3 4 5 6 2m 3 b0 bm c0 cm d0 dm ... q0 1 2 b1 bm c1 cm d1 dm . q1 1 2 3 b2 . . . . . . q2 . . . . . . . . . . . . dm d0 . . 2 bm b1 cm c0 . . . . 1 1 bm b0 . . . . . . 2.6. UTILISATION DE LA TRANSFORMÉE EN Z. l’élément ci est donné par: det l’élément di est donné par: det b0 bm c0 cm jusqu’à obtention de la (2m 3)ieme Le critère de Jury est le suivant: bm i bi cm i ci ligne. 19 = b0 bi bm bm = c0 ci cm i 1 cm 1 i 1. D(1) > 0 2. (1)m D( 1) > 0 3. b0 > jbm j c0 > jcm 1 j d0 > jdm 2 j .. . q0 > jq2 j Si une seule de ces conditions n’est pas véri…ée, alors la fonction de transfert possède au moins un pôle à l’extérieur ou sur le cercle unité et le …ltre causal est instable. Dans la suite, et sauf précision, nous ne considèrerons que des …ltres causaux. 2.6.4 Réponse en fréquence. Elle est obtenue à l’aide de la propriété de fonctions propres tenues par les exponentielles complexes. Soit donc xn = ej2 nf yn = X hk ej2 (n k)f = xn k X hk e j2 kf (2.31) k Par dé…nition: H(ej2 f ) = X hk e j2 kf = H (z)jz=ej2 f (2.32) k L’expression (2.32) est la transformée de Fourier à temps discret (TFTD) de de la réponse impulsionnelle. Pour z = e j2 f , X H(ej2 f ) = hk e j2 kf k Si les coe¢ cients hn sont réels on a: H(e j2 f ) = H (ej2 f ) On caractérise H(ej2 f ) par son module et son argument: H(ej2 f ) = jH(f )j ej'(f ) . 20 FILTRAGE NUMÉRIQUE. L’interprétation géométrique est la suivante. Considérons une fonction de transfert dé…nie par ses pôles et ses zéros: QN 1 i=1 H (z) = h0 QM 1 j=1 (z zi ) (z pj ) son évaluation sur le cercle unité donne: QN j2 i=1 e j2 f H e = h0 Q M j2 j=1 (e f zi f pj ) (2.33) Les numérateur et dénominateur sont des produits de nombres complexes de la forme: ej2 f zi = Mzi ej zi ej2 f pj = Mpj ej pj QN M zi i=1 Avec ces notations le module est jH(f )j = h0 QM , et l’argument: j=1 Mpj PM 1 P 1 '(f ) = N pj . zi j=1 i=1 L’estimation du module et de la phase s’e¤ectue directement dans le plan z, les valeurs Mzi et Mpj sont les modules des vecteurs reliant les pôles et les zéros de H(z) à un point M d’a¢ xe z situé sur le cercle unité, les valeurs des arguments zi et pj sont les angles formés par ces vecteurs avec une direction parallèle à l’axe réel. On donne la représentation pour un …ltre comportant un zéro et deux pôles (…gure 2.17). Sur celle-ci on voit que si 2 f varie de 0 à , on obtient la réponse en fréquence de 0 à 12 , où 1 est la fréquence d’échantillonnage. De même lorsque 2 f varie de 0 à (demi-cercle inférieur), on obtient 1 la réponse en fréquence de 0 à 2 . Ceci permet une graduation du cercle unité en fréquence relativement à la fréquence d’échantillonnage. On a donc la correspondance suivante entre un déphasage et un sousmultiple de la fréquence d’échantillonnage: 45 90 135 180 , , , , 1 8 1 4 3 8 1 2 Nous retrouvons dans cette représentation la périodicité fréquentielle due à l’échantillonnage temporel. L’étude de la réponse en fréquence d’un …ltre numérique à coe¢ cients réels s’e¤ectuera donc uniquement pour des fréquences inférieures à 12 . 1 est ici la fréquence de Nyquist. De façon plus générale si xn = an , alors yn = H (a) an : 2.7. QUELQUES NOTATIONS ET DÉFINITIONS 21 Figure 2.17: Interprétation géométrique de la réponse en fréquence 2.7 Quelques notations et dé…nitions Nous donnons ici quelques dé…nitions et notations qui seront reprises et développées plus loin dans le texte. 2.7.1 Les polynômes PN 1 hn z n . C’est un polynôme en z 1 de degré N 1, dont Soit H (z) = n=0 nous dirons qu’il est d’ordre N 1. Nous donnons ci-dessous une liste non exhaustive de termes associés à di¤érentes propriétés des polynômes. 1. H (z) est dit strictement à minimum de phase (ou strictement de Hurwitz ) si tous les zéros de z N 1 H (z) sont à l’intérieur du cercle unité du plan z. Il sera dit à minimum de phase si les zéros de z N 1 H (z) sont à l’intérieur ou sur le cercle unité. 2. H (z) est dit strictement à maximum de phase si tous les zéros de z N 1 H (z) sont à l’extérieur du cercle unité du plan z. Il sera dit à maximum de phase si les zéros de z N 1 H (z) sont à l’extérieur ou sur le cercle unité. 2.7.2 Les conjugaisons complexes Il existe plusieurs façons de conjugués un polynôme. La conjugaison peut porter sur les seuls coe¢ cients, sur les coe¢ cients et la variable z etc: : : On obtient les formes suivantes. 22 FILTRAGE NUMÉRIQUE. 1. On notera H (z) la conjugaison sur les seuls coe¢ cients. (H (z) = h0 + h1 z 1 ) H (z) = h0 + h1 z 1 ). ~ (z) = H z 1 . (H (z) = h0 + 2. On notera la paraconjugaison par: H 1 ~ (z) = h + h z). De cette dé…nition on déduit un certain h1 z ) H 0 1 nombre de propriétés: ~ (z) = [H (z)] sur le cercle unité. H ~ (z) peut être vue comme le prolongement analytique de la conH jugaison du cercle unité. ~ (z) H (z) sur le cercle unité est équivalent Etant donné H (z), H à H ej2 f 2 . ~ Si H (a) = 0 alors H 1 a = 0. ~ (z) est à Si H (z) est à minimum de phase (resp. maximum), H maximum phase (resp. minimum). Bien que sur le cercle unité on ait ausssi H (z ) = H (z), H (z ) n’est ~ (z) reste une fraction rapas une fraction rationnelle en z, alors que H tionnelle (donc analytique) en z. 2.7.3 Les symétries Un polynôme de la forme H (z) = PN 1 n n=0 hn z 1. A symétrie hermitienne si hn = hN 2. A anti-symétrie hermitienne si hn = est dit: 1 n hN 1 n 3. A symétrie hermitienne généralisée si hn = hN ~ (z) : dire H (z) = z (N 1) H 1 n ( 2 C), c’est à 4. Des polynômes symétriques et anti-symétriques véri…ent (1) et (2) sans la conjugaison. 5. On dira que deux polynômes de même ordre sont miroirs si H1 (z) = z (N 1) H2 z 1 . 2.7. QUELQUES NOTATIONS ET DÉFINITIONS 23 En résumé: Un …ltre linéaire, invariant et causal est dé…ni : soit par sa réponse impulsionnelle hn nulle pour n < 0. soit par sa fonction de transfert H(z) = Z[hn ] = Z[h(nT )]. Un …ltre RIF causal est caractrisé par hn = 0 pour n < 0 et n > N . Il est inconditionnellement stable. Sa fonction de transfert est un polynôme en z. Un …ltre RII causal est caractrisé par hn = 0 pour n < 0. Il est stable si ses pôles sont en module inférieurs à 1. Sa fonction de transfert est une fraction rationnelle. RIF Fonction de transfert Sortie Stabilité Réponse en fréquence H(z) = PN 1 n n=0 hn z PN 1 hk xn yn = k=0 Inconditionnelle H ej2 RII f k = H(z)z=ej2 PN 1 i i=0 ai z P M 1 1+ j=1 bj z H(z) = yn = P1 PN i=0 ai xn i n=0 jhn j f H ej2 f j = P1 PM n=0 hn z j=1 bj yn j < 1 , jpôlesj < 1 = H(z)z=ej2 f n 24 FILTRAGE NUMÉRIQUE. Synthèse des …ltres non-récursifs. La fonction de transfert d’un …ltre non-récursif ou à réponse impulsionnelle …nie (RIF) est un polynôme en z, la réalisation ne pose pas de problèmes a priori (en particulier pour la stabilité) puisque la fonction de transfert n’a pas de pôle. En règle générale on procède en 4 étapes: 1. résolution du problème d’approximation pour déterminer les coe¢ cients du …ltre qui satisfait un gabarit donné, 2. choix d’une structure et quanti…cation des coe¢ cients du …ltre en un nombre …ni de bits, 3. quanti…cation des variables du …ltre c’est à dire choix d’une longueur de mots pour : a l’entrée, b la sortie, c les mémoires intermédiaires, 4. véri…cation par simulation que le …ltre …nal satisfait au gabarit …xé. Nous nous intéresserons dans ce chapitre à la première étape. Parmi les avantages des …ltres RIF, on peut citer: 1. la possibilité de réaliser des …ltres à phase linéaire, particulièrement intéressants pour la transmission de données. 2. la possibilité d’obtenir un bruit de calcul assez faible Parmi les inconvénients: 1. la nécessité d’un ordre assez élevé pour obtenir des …ltres à coupure raide, 2. un temps de propagation de groupe qui n’est pas forcément un nombre entier d’échantillons. 25 26 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. 2.8 Caractéristiques des …ltres à phase linéaire. L’intérêt principal des …ltres RIF réside dans la possibilité d’obtenir des …ltres à phase linéaire. Nous allons voir ce que ceci signi…e en terme de fonction de transfert. Soit hn la réponse impulsionnelle d’un …ltre RIF dé…nie pour n = 0; 1; ;N 1: N X1 H(z) = hn z n (2.34) n=0 La transformée de Fourier correspondante est: H(ej! ) = N X1 hn e jn! = H(ej! ) ej'(!) (2.35) n=0 Où '(!) est fonction continue de !, le signe signi…e que la phase du …ltre peut présenter des sauts de (ej = 1). Les coe¢ cients hn étant réels, on a les relations: H ej! '(!) = = H e j! '( !) 0 !< (2.36) La contrainte de phase linéaire peut s’exprimer de deux façons: Cas 1 Cas 2 où 2.8.1 '(!) = '(!) = ! ! ! ! (2.37) est le temps de propagation de groupe en nombre d’échantillons. Cas 1. Le gain complexe s’exprime sous la forme: j! H(e ) = N X1 hn e jn! = H(ej! ) e j ! (2.38) n=0 Soit par identi…cation des parties réelles et imaginaires, P 1 H(ej! ) cos ( !) = N hn cos (n!) Pn=0 N 1 j! H(e ) sin ( !) = n=1 hn sin (n!) (2.39) Les hn sont obtenus en e¤ectuant le rapport des deux égalités de (2.39): PN 1 n=1 hn sin (n!) tg ( !) = (2.40) P 1 h0 + N n=1 hn cos (n!) Deux cas sont à envisager: 2.8. CARACTÉRISTIQUES DES FILTRES À PHASE LINÉAIRE. 27 1. = 0 qui se traduit par hn = 0 pour n 6= 0 et h0 arbitraire. C’est un simple gain sans intérêt. P 1 2. 6= 0 Dans ce cas (2.40) se met sous la forme N n cos(n!) sin( !) = n=0 hP PN 1 N 1 h sin(n!) cos( !) qui peut se condenser en n=0 hn sin(( n=0 n n)!) = 0 . Si l’équation admet une solution, elle est unique. On peut véri…er assez facilement qu’une solution est donnée par: = N2 1 hn = hN 0 1 n n N 1 (2.41) Les conséquences en sont: 1. à une valeur de N , correspond une valeur de , 2. pour cette valeur de , la réponse présente une symétrie particulière. - si N est impair, - si N est pair, est entier, est non-entier. Exemples de réponses impulsionnelles: - pour N = 11 (…gure 2.18), on a = 5 centre de symétrie = h5 Figure 2.18: Réponse symétrique, N impair - pour N = 10 (…gure 2.19), on a échantillons. = 4; 5 centre de symétrie entre deux Pour le type 1, on a un temps de propagation de groupe et un retard de phase constants: = '= @' @! ' ! = = temps de propagation de groupe retard de phase Si l’on désire seulement le temps de propagation de groupe constant alors on est dans le cas de la contrainte de type 2. 28 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Figure 2.19: Réponse symétrique, N pair 2.8.2 Cas 2. Pour cette contrainte: '(!) = ! Le raisonnement précédent conduit à la solution: = N2 1 = 2 hn = hN (2.42) 1 n 0 n N 1 Pour ce type de …ltres la réponse impulsionnelle est antisymétrique (…gures 2.20 et 2.21). Cette antisymétrie impose hN 1=2 = 0 pour N impair. Figure 2.20: Réponse antisymétrique, N impair Figure 2.21: Réponse antisymétrique, N pair 2.9 Comportement fréquentiel. Les deux cas précédents amènent à distinguer quatre types de …ltres: Type 1- réponse symétrique N impair, Type 2- réponse symétrique N pair, Type 3- réponse antisymétrique N impair, Type 4- réponse antisymétrique N pair. 2.9. COMPORTEMENT FRÉQUENTIEL. 29 On reprend ici la terminologie utilisée dans la littérature. Ces quatre types permettent, par des manipulations simples, de dé…nir les réponses en fréquence et d’en déduire l’utilisation possible des …ltres (passe-bas, passehaut, etc...). La forme générale de la réponse en fréquence est donnée par : N X1 !) H(ej! ) = hn e jn! = H(ej! ) ej( (2.43) n=0 2.9.1 Réponse symétrique. N impair. Les hn véri…ent hn = hN soit: 1 n, et pour cette forme N H(ej! ) = e j! (N 1) 2 = 0 et = (N 1)=2, 1 2 X an cos (n!) (2.44) n=0 où: H(ej! ) = pour (n = 1; 2.9.2 ; P N2 1 n=0 an cos (!) et a0 = hN 1 =2 et an = 2h N N 1 2 ). 1 2 n Réponse symétrique. N pair. La forme de la réponse en fréquence est: N H(ej! ) = e j! (N 1) 2 2 X bn cos n n=1 où bn = 2h N 2 n 1 2 ! (2.45) ; N2 : pour n = 1; 2; Remarque: quelquesoit les valeurs des bn on a pour ! = ; H(ej ) = 0. Ce type de …ltre ne peut pas convenir pour des passe-haut. 2.9.3 Réponse antisymétrique. N impair. Les hn véri…ent hn = hN 1 n Il su¢ t de remplacer les cosinus par des sinus dans l’expression (2.44) et de considérer que = 2 . N H(ej! ) = e j! (N 1) 2 ej 2 1 2 X cn sin (n!) (2.46) n=1 où cn = 2h N 1 n pour n = 1; ; N2 1 . 2 Remarque: quelquesoit les valeurs des cn on a pour ! = 0 et , H(ej0 ) = H(ej ) = 0. Ce type de …ltre peut être utilisé pour des passebandes ou pour e¤ectuer l’approximation d’un di¤érentiateur (ou dérivateur). 30 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. 2.9.4 Réponse antisymétrique. N pair. L’analogie se fait avec (2.45) en remplaçant cosinus par sinus: N j! H(e ) = e j! (N 1) 2 2 X j2 e dn sin 1 2 n n=1 où dn = 2h N 2 n pour n = 1; ; ! (2.47) N 2. Remarque: quelquesoit les valeurs des dn on a pour ! = 0; H(ej0 ) = 0. Ce type de …ltre peut être utilisé pour des passe-haut. 2.10 Position des zéros du …ltre à phase linéaire. Les symétries des réponses impulsionnelles font que les zéros de ces …ltres ont des positions particulières relativement au cercle unité. Soit la fonction de transfert de forme générale: H(z) = N X1 hn z n = h0 + h1 z 1 + (N 3) h2 z h1 z (N 2) h0 z (N 1) n=0 (2.48) avec: + = réponse symétrique, = réponse antisymétrique. Il est assez facile de véri…er que H(z) obéit à la relation: H z 1 zN = 1 H(z) (2.49) Ce qui signi…e que H(z) et H(z 1 ) sont identiques à un délai près de (N 1) échantillons et un facteur multiplicatif 1. 2.10.1 Zéro complexe hors du cercle unié. Soit zi = i ej i un zéro complexe de H(z), où i 6= 1et i 6= 0; . D’après la relation (2.49), zi 1 = 1 e j i est aussi un zéro de H(z). De i plus les coe¢ cients hn étant réels les conjugués de zi et zi 1 sont aussi des zéros de H(z). S’il existe un zéro complexe, il existe son inverse et leurs conjugués. La forme élémentaire de H(z) comporte quatre termes: H(z) = (1 z 1 j ie i )(1 z 1 ie j i )(1 z 1 1 ej i )(1 z i 2.10.2 1 1 e j i ) (2.50) i Zéro complexe sur le cercle unité. Soit zi = ej i avec i 6= 0; , un zéro de H(z) sur le cercle unité, alors zi = e j i est aussi zéro de H(z). La forme élémentaire de H(z) est donc: H(z) = (1 z 1 j e i )(1 z 1 e j i ) (2.51) 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 2.10.3 31 Zéro réel hors du cercle unité. Soit zi = i avec i 6= 1, un zéro réel de H(z), alors zi = de H(z). La forme élémentaire de H(z) est: H(z) = (1 iz 1 1 )(1 z 1 1 i est aussi zéro ) (2.52) i 2.10.4 Zéro réel sur le cercle unité. Soit zi = 1, ce zéro reste simple car il est aussi bien zéro de H(z) que de H(z 1 ). La forme élémentaire de H(z) est: H(z) = (1 z 1 ) (2.53) Ce cas correspond à un temps de propagation de groupe d’un demi échantillon, il y en a donc un nombre impair quand N est pair et un nombre pair quand N est impair (0 compris). 2.11 Méthodes de synthèse des …ltres RIF. Les méthodes de synthèse que nous allons considérer permettent de satisfaire des contraintes de réponses en amplitudes, sachant que par raison de symétrie de la réponse impulsionnelle, la phase résultante sera linéaire en fréquence. On dé…nit un gabarit de réponse en amplitude de la façon suivante (…gure 2.22): f = f2 Rc = f1 +f2 f f1 bande de transition, raideur de coupure, 1 : ondulation tolérée en bande passante, 2 : ondulation tolérée en bande a¤aiblie. Tout …ltre dont la réponse en amplitude se situe dans le gabarit dé…ni satisfait les contraintes spéci…ées. Pour des raisons de facilité de réalisation et de réduction en coût de calcul, le meilleur …ltre sera celui d’ordre minimum. 2.11.1 Méthode de la fenêtre. La réponse en fréquence d’un …ltre numérique (…gure 2.23) est périodique de période 1. Il est alors facile de l’exprimer sous forme de série de Fourier, série dont les coe¢ cients hn sont ceux de la réponse impulsionnelle: H(ej! ) = +1 X n= 1 hn e j!n (2.54) 32 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Figure 2.22: Dé…nition du gabarit Avec: 1 hn = 2 Z + j! j!n H(e )e d! = Z 1=2 H(ej2 f )ej2 nf df (2.55) 1=2 Dans (2.55) on prendra H(ej2 f ) = H(ej2 f ) ; c’est à dire une phase nulle. Avec le gabarit idéal de la …gure 2.23: Z fc ej2 nf df (2.56) hn = fc Figure 2.23: Gabarit idéal Les hn obtenus sont dé…nis pour n 2 Z (…gure 2.24), ce qui n’est pas utilisable de manière directe en pratique. Pour obtenir un …ltre de longueur ou d’ordre …ni on tronquera le nombre des hn utilisés (meilleure approximation au sens L2 de la série de Fourier): hn = 0 jnj > N 1 2 P N2 1 On obtient: H(z) = h0 + n=1 (h n z n + hn z n ). N 1 La causalité est obtenue en multipliant H(z) par le terme z 2 ce qui introduit un retard de N 2 1 , donc une phase linéaire, mais ne change pas la réponse en amplitude: Hcausale (z) = z N 1 2 H(z) (2.57) 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 33 Figure 2.24: Réponse impulsionnelle E¤et de la troncature. Tronquer le nombre de coe¢ cients hn revient à multiplier par une fenêtre rectangulaire (…gure 2.25) dé…nie par: wn = 1 jnj N 2 1 wn = 0 ailleurs Soit H(z) la fonction de transfert du …ltre et WR (z) la transformée en z de la fenêtre rectangulaire. La fonction de transfert obtenue est: Hw (z) = Z[wn hn ] Figure 2.25: Troncature temporelle H Soit encore: Hw (z) = 21 j C H(v)WR vz dv v . où C est un contour pris dans la région de convergence commune à H(v) et WR vz . Soit z = ej! et v = ej , alors H(v) et WR vz convergent sur le cercle unité du plan v et la relation devient: Z 2 1 jw Hw (e ) = H(ej )WR (ej(w )) d 2 0 Ce qui traduit la convolution de H(ej! ) avec WR (ej! ). Or pour un 1 0 ! !c …ltre passe-bas H(ej! ) vaut H(ej! ) = où ! c dé…nit la 0 !c ! pulsation de coupure du …ltre. 34 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Et WR (ej! ) qui est la transformée de Fourier d’une fonction rectangulaire est un rapport de sinus. La convolution introduit donc sur H(ej! ) des ondulations qui sont dues à la forme de WR (ej! ). wR (n) = 1 jnj 0 jnj > N 1 2 N 1 2 ! WR (ej2 f ) = P N2 1 n= N 1 e 2 j2 nf = sin(N f ) sin( f ) (2.58) La …gure (2.26) traduit l’e¤et de la fenêtre rectangulaire sur un …ltre passe-bas, c’est une représentation du phénomène de Gibbs caractéristique de la convergence en moyenne quadratique des séries de Fourier de fonctions discontinues. Figure 2.26: Phénomène de Gibbs La transformée de Fourier de la fenêtre rectangulaire présente une largeur du lobe principal de: ! L = 4N et un taux d’ondulation dé…ni par: = 100 amplitude max du lobe secondaire % amplitude max du lobe principal (2.59) Exemple: = 22% pour N = 11. présente une décroissance relativement lente avec N . Pour cette raison il est important de pouvoir déterminer des formes de fenêtres (ou fonctions de pondération) dont les caractéristiques (largeur du lobe principal, taux d’ondulation) soient des plus favorables. Dé…nition de fenêtres. Les fenêtres utilisées pour la pondration des coe¢ cients d’un …ltre RIF doivent conserver la symétrie de la réponse impulsionnelle, autrement dit doivent véri…er w0 = wN 1 dans leur version causale. On donne (tableau 2.1) l’expression temporelle de quelques fenêtres couramment utilisées dans la synthèse de …ltres. 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. Dé…nition (0 n < N 1 2jn N 2 1 j 1 N 1 Fenêtre Rectangulaire Bartlett (triangulaire) Hann Hamming Blackman 0:4266 0:5 0:5 cos 0:54 0:46 cos 0:4965 cos 2 n N 1 35 1) 2 n N 1 2 n N 1 + 0:076 cos 4 n N 1 Table 2.1: Dé…nition temporelle de fenêtres Fenêtre Rectangulaire Bartlett Hann Hamming Blackman Réponse en fréquence W (f ) f) WR (f ) = sin(N sin( f ) WR2 (f ) 1 1 1 1 2 WR (f ) + 4 WR (f N ) + WR (f + N ) 0:54WR (f ) + 0:23 WR (f N1 ) + WR (f + N1 ) 0:42WR (f ) + 0:25 WR (f N1 ) + WR (f + N1 ) +0:04 WR (f N2 ) + WR (f + N2 ) Table 2.2: Réponse en fréquence des fenêtres Sans tenir compte du terme de phase qui est e j (N 1)f pour toutes les fenêtres, on donne (tableau 2.2) leur réponse en fréquence. Ces fenêtres peuvent être caractérisées par di¤érents paramètres dont nous donnons un résumé (tableau 2.3). Les représentations temporelles et fréquentielles des fenêtres sont données …gures (2.27), (2.28), (2.29), (2.30) et (2.31). Fenêtre Largeur du Lobe principal Rectangulaire Bartlett Hann Hamming Blackman 2=N 4=N 4=N 4=N 6=N Hauteur du 1er Lobe secondaire en dB 13 26 31 41 57 Table 2.3: Paramètres des fenêtres Décroissance des Lobes secondiares en dB/oct 6 12 18 6 18 36 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Fenêtre Rectangulaire 1 0.8 0.6 0.4 0.2 0 0 10 20 30 Temporelle 40 50 60 40 20 0 -20 0 0.05 0.1 0.15 0.2 0.25 Fréquentielle 0.3 0.35 0.4 0.45 0.5 Figure 2.27: Fenêtre rectangulaire Fenêtre de Bartlett 1 0.8 0.6 0.4 0.2 0 0 10 20 30 Temporelle 40 50 60 50 0 -50 -100 0 0.05 0.1 0.15 0.2 0.25 Fréquentielle 0.3 0.35 0.4 0.45 0.5 Figure 2.28: Fenêtre de Bartlett Pour les fenêtres qui viennent d’être présentées, et qui sont optimales pour un certain critère, on ne sait pas déterminer a priori la valeur de N qui permettra de satisfaire aux contraintes du gabarit. Il existe une fenêtre, dite fenêtre de kaiser, pour laquelle une méthode empirique, mais qui donne de bons résultats, permet de connaître a priori l’ordre du …ltre en fonction des caractéristiques du gabarit. Fenêtre de Kaiser. Elle est dé…nie par (…gure 2.32): s I0 wK (n) = 1 2n N 1 I0 ( ) 2 ! , jnj N 1 2 (2.60) Où la fonction I0 () est la fonction de Bessel modi…ée d’ordre zéro qui peut se calculer simplement par une série rapidement convergente: " #2 1 X (x=2)k I0 (x) = 1 + (2.61) k! k=1 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 37 Fenêtre de Hann 1 0.8 0.6 0.4 0.2 0 0 10 20 30 Temporelle 40 50 60 50 0 -50 -100 -150 0 0.05 0.1 0.15 0.2 0.25 Fréquentielle 0.3 0.35 0.4 0.45 0.5 Figure 2.29: Fenêtre de Hann Fenêtre de Hamming 1 0.8 0.6 0.4 0.2 0 0 10 20 30 Temporelle 40 50 60 50 0 -50 -100 0 0.05 0.1 0.15 0.2 0.25 Fréquentielle 0.3 0.35 0.4 0.45 0.5 Figure 2.30: Fenêtre de Hamming L’intérêt de cette fenêtre est que l’on peut faire varier le taux d’ondulation de façon continue (…gure 2.33) entre celui obtenu par la fenêtre de Blackman et celui de la fenêtre rectangulaire, ceci en faisant varier de façon continue. L’élargissement de la bande de transition dû à la variation croissante de peut être compensé par un accroissement de l’ordre du …ltre, on a ainsi une grande souplesse pour déterminer la fonction de transfert d’un …ltre. Kaiser a développé une méthode empirique permettant de déterminer l’ordre du …ltre et la valeur de pour un gabarit donné. Soit le gabarit dé…ni par la …gure (2.34): On choisira ici 1 = 2 = , ce qui, en décibels, permet de dé…nir le taux d’ondulation en bande passante: 1 = 20log 1+ et l’atténuation minimum 1 en bande atténuée: = 20log . La bande de transition est: ! = 2 !2 !1. Supposons que l’on veuille déterminer un …ltre dont les spéci…cations sont: 1. ondulation en bande passante: 0 1 38 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Fenêtre de Blackman 1 0.8 0.6 0.4 0.2 0 0 10 20 30 Temporelle 40 50 60 50 0 -50 -100 -150 0 0.05 0.1 0.15 0.2 0.25 Fréquentielle 0.3 0.35 0.4 0.45 0.5 Figure 2.31: Fenêtre de Blackman 1 Am plitude 0.8 0.6 0.4 0.2 0 0 10 20 30 40 50 60 70 80 30 Am plitude en dB 20 10 0 -10 -20 -30 -40 -50 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 Figure 2.32: Fenêtre de Kaiser 0 2. atténuation minimum: 3. bande de transition: 2 0 ! La procédure à suivre est: 1. on détermine la série hn à l’aide de la série de Fourier de la fonction: 1 pour j!j ! c H(ej! ) = 0 pour j!j > ! c où ! c est la moyenne arithmétique de ! 1 et ! 2 : ! c = 21 (! 1 + ! 2 ) 1. on choisit tel que: On peut prendre: 0 1 1 = min( 1 ; 1 = 2 = et 2) 2 où: 100:05 100:05 100:05 0 1 1 0 1 +1 0 2 0 2 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 39 40 20 0 -20 -40 -60 -80 -100 0 0.05 0.1 0.15 0.2 0.25 Figure 2.33: Spectre pour di¤érentes valeurs de Figure 2.34: Gabarit passe-bas 1. on calcule 2, 2. on choisit tel que: 8 < 0 = 0:5842 ( 2 : 0:1102 ( 2 1)0:4 + 0:078 ( 8:70) 2 pour 2 21 21) pour 21 < 2 pour 2 > 50 3. on détermine l’ordre N impair le plus petit a…n que: N ! +1 pour 2 21 pour 2 > 21 Nous disposons alors de tous les éléments pour évaluer wK (n) et donc les coe¢ cients hn . Pour obtenir un …ltre passe-bande ou coupe-bande la procédure est quelque peu modi…ée si les bandes de transition ne sont pas identiques (…gure 2.35). On choisit pour bande de transition, la plus étroite: où: D = 0:92 !e D 50 7:95 14:36 2 ! = min[(! 1;1 ! 2;1 ); (! 2;2 ! 1;2 )] 40 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Figure 2.35: Gabarit passe-bande On dé…nit H(ej! ) par: 8 < 0 pour 0 j!j < ! c1 1 pour ! c1 j!j < ! c2 = : 0 pour ! c2 j!j < H ej! où ! c1 et ! c2 sont dé…nies par: ! c1 = ! 1;1 2! ! c2 = ! 1;2 + 2! 2.11.2 Méthode aux valeurs propres. Avant de décrire cette méthode nous allons dériver une classe de fenêtres optimales appelées séquences sphéroïdales aplaties. Ces séquences notées v (n) sont réelles, de longueur N et d’énergie unité, et ont la particularité d’avoir 1 une énergie minimisée dans la bande de fréquence fs f ! ). 2 (! s Formulation du problème. Soit v (n) une séquence causale et réelle de longueur N et V (z) = Dé…nissons: Z 2 d! V ej! s = PN 1 n. n=0 v (n) z (2.62) !s La quantité s doit être minimisée sous la contrainte que l’énergie de v (n) soit unitaire. Ce qui se traduit à l’aide du théorème de Parseval par: Z 2 j! V e 0 La minimisation de imisation de (2.64): d! = N X1 v 2 (n) = 1 (2.63) n=0 s sous la contrainte (2.63) est équivalente à la max= Z 0 !s V ej! 2 d! (2.64) 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 41 Exprimons le sous forme matricielle. Soit le vecteur v = [v (0) v (1) T et le vecteur e (z) = 1z 1 z (N 1)) , il vient: v (N V ej! = vT e ej! et V ej! 2 = vT e ej! eH ej! v (2.65) où : eH désigne le transpose-conjugué. L’équation (2.64) devient: =v T Z !s R (!) d! (2.66) v 0 où R (!) = e ej! eH ej! est une matrice N est : R (m; n) = e j(m n)! = cos (m n) ! N dont l’élément (m; n) j sin (m n) ! (2.67) R (!) = P (!) +jQ (!) est une matrice Hermitienne. Sa partie imaginaire est antisymétrique, et comme v est réel on a: vT Q (!) v =0. (2.66) se simpli…e en: Z !s d! P (!) = vT v = vT Pv (2.68) 0 Les termes de la matrice P s’expriment simplement sous la forme: Z !s cos (m n) ! d! 0 = sin (m n) ! s ,0 (m n) m; n N 1 (2.69) La contrainte d’énergie unitaire s’écrit vT v =1. Le problème qui consiste à trouver la séquence v (n) d’énergie minimum dans la bande ! s ! a été transformé en la recherche d’un vecteur v de norme unité qui maximise (2.68). Solution du problème. La matrice P est réelle symétrique (donc Hermitienne). D’après le principe de Rayleigh toutes ses valeurs propres i sont réelles et la valeur maximale de sous la contrainte vT v =1 est obtenue si et seulement si v est le vecteur propre associé à la plus grande valeur propre max . Cette valeur propre correspond à la quantité (2.64) et satisfait donc à max < 1. Le vecteur v ainsi obtenu joue le rôle d’une fenêtre de pondération. 1)]T 42 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. Application à la synthèse directe de …ltres. Nous allons appliquer le principe précédent à la synthèse directe de …ltres à phase linéaire. Prenons le cas d’un …ltre de type 1, N impair et réponse impulsionnelle symétrique. H (z) = N X1 h (n) z n (2.70) n=0 La réponse en amplitude est: HR (!) = M X an cos (n!) = aT c (!) (2.71) n=0 où M = N 2 1 , a = [a0 a1 D’après (2.44) H ej! = e H ej! 2 aM ]T , c (!) = jM ! H (!), on R = HR ej! 2 [1 cos ! en déduit: = aT c (!) c (!)T a L’énergie dans la bande atténuée est: Z 2 d! = aT Pa Es = H ej! cos M !]T . (2.72) (2.73) !s R Les termes de la matice P sont de la forme !s cos (m!) cos (n!) d! et peuvent donc être évalués en fonction de ! s , m et n. Dans la bande passante, la réponse en amplitude à la fréquence nulle est: HR (0) = aT 1 (2.74) où 1 est le vecteur formé de 1. En prenant (2.74) comme valeur de référence, on peut écrire l’erreur en bande passante à toute fréquence comme: aT 1 aT c (!) = aT [1 c (!)] (2.75) Ce qui permet d’introduire la notion d’erreur quadratique moyenne en bande passante: Ep = aT Qa (2.76) R !p T d! où Q = 0 [1 c (!)] [1 c (!)] . La fonction de coût est alors dé…nie par: = Es + (1 ) Ep (2.77) où , (0 < < 1), est un paramètre de compromis pour les performances en bande passante et atténuée. Nous sommes donc ramené à la forme précédente: = aT Ra (2.78) où R = P + (1 ) Q est une matrice réelle, symétrique et dé…niepositive. Le vecteur a de norme unité qui minimise (2.78) est le vecteur propre associé à la plus petite valeur propre de R. 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 2.11.3 43 Filtres maximalement plats Ce type de …ltres à phase linéaire présente la particularité d’avoir une réponse en fréquence maximalement plate autour de f = 0 et f = 1=2. L’avantage de la synthèse est la connaissance de l’expression analytique de leur réponse en fréquence: H ej2 f =e j(N 1) f cos2K ( f ) 2L X1 cn sin2n ( f ) (2.79) n=0 (K 1 + n)! cn = (K 1)!n! Le degré du …ltre est donné par: N 1 = 2 (K + L 1). La signi…cation de K et L est directement issue de (2.79), les 2K 1 premières dérivées sont nulles en f = 1=2, et les 2L 1 premières dérivées sont nulles en f = 0. En utilisant les relations élémentaires entre z et cos (2 f ), on obtient la forme générale de H (z) : H (z) = 1+z 2 1 2K 2L X1 n cn ( 1) 1 n=0 z 2 1 2n z (L n 1) Les valeurs de K et L sont dé…nies à partir de deux paramètres représentés …gure (2.36). (2.80) et Figure 2.36: Dé…nition du gabarit maximalement plat. L’ordre N du …ltre est donné par: N = 1 + 2 ( = )2 (2.81) K On dé…nit ensuite la meilleure approximation rationnelle M de cos2 ( =2), N 1 où M est tel que 2 M N 1. On en déduit en…n L = M K. On retrouvera l’intérêt de ces …ltres pour les bancs de …ltres à 2 voies. 44 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. 1.2 1 0.8 0.6 0.4 0.2 0 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 Figure 2.37: Filtre maximalement plat K = 17, L = 9. 2.11.4 Méthode itérative. Nous allons considérer ici la synthèse d’un …ltre comme un problème d’approximation pondérée au sens de Chebyshev. Pour cela il nous faut déterminer un ensemble de conditions pour lesquelles il est possible de montrer que la solution est optimale (au sens où l’erreur d’approximation est minimisée sur l’intervalle entier), et unique. On rappelle qu’un …ltre RIF à phase linéaire possède une fonction de transfert qui peut prendre une des formes dé…nies par les types 1 à 4. La forme générale du comportement en fréquence est H(ej! ) = H(ej! ) ej'(!) , où '(!) = !, = 0 ou 2 et = N 2 1 . Il est commode d’exprimer H(ej! ) sous la forme d’un produit H(ej! ) = Q(ej! )P (ej! ). Produit dans lequel P (ej! ) se présente sous la même forme pour les quatre types précédemment considérés. Dans chaque cas P (ej! ) est un polynôme trigonométrique (en cos(n!)) ce qui va permettre d’uni…er la synthèse pour les quatre types. Les relations qui lient les coe¢ cients de P (ej! ) aux coe¢ cients des premières formes sont: pour le type 1: 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. H(ej! ) N P (ej! ) 1 2 P N an cos (n!) n=0 N 2 P bn cos n n=1 N 1 2 N cn sin (n!) N dn sin n=1 n 1 2 n=0 N 1 2 ! an cos (n!) 1 b0n cos (n!) cos (!=2) c0n cos (n!) sin (!) d0n cos (n!) sin (!=2) 3 2 P n=1 2 P P n=0 1 2 P Q(ej! ) 1 2 P n=0 N 1 2 ! 45 P n=0 Table 2.4: Tableau de correspondance pas de changement. pour le type 2: 0 b0 = 12 b1 0 0 bk = 2bk bk 0 b N 1 = 2b N 1 pour k = 1; 2; ; N2 2 2 2 pour le type 3: 0 cN 0 N 3 = cN c 5 = 2c N 1 2 2 3 2 2 .. . 0 0 ck 1 ck+1 = 2ck pour k = 2; 3; 0 0 c0 + 12 c2 = c1 ; N2 5 pour le type 4: 0 dN 0 2 1 = 2d N 2 0 dk 1 dk = 2dk pour k = 2; 3; ; N2 1 0 0 d0 12 d1 = d1 Il reste à formuler le problème d’approximation au sens de Chebyshev sachant que l’on connaît a priori Q(ej! ) et que P (ej! ) est le polynôme trigonométrique dont on doit déterminer les coe¢ cients. Approximation pondérée au sens de Chebyshev. Soit donc HD (ej! ) la réponse en amplitude que l’on désire et W (ej! ) une fonction de pondération qui permet de donner une importance di¤érente à 46 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. l’erreur suivant la pulsation !. La fonction de pondération est généralement dé…nie de manière normalisée: W (ej! ) = 2= 1 dans la bande passante dans la bande atténuée 1 (2.82) L’erreur d’approximation s’exprime par: E(ej! ) = W (ej! ) HD (ej! ) Q(ej! )P (ej! ) (2.83) Puisque Q(ej! ) est …xé il vient: E(ej! ) = W (ej! )Q(ej! ) HD (ej! ) Q(ej! ) P (ej! ) (2.84) Il faut remarquer que (2.84) est partout valable sauf dans les cas où 0 Q(ej! ) s’annule. Exception faite de ces cas on peut dé…nir W (ej! ) = j! 0 D (e ) W (ej! )Q(ej! ) et HD (ej! ) = HQ(e j! ) : Le problème se résumei donc à déterminer P (ej! ) tel que E(ej! ) = h 0 W (ej! ) HD (ej! ) P (ej! ) soit minimum au sens de Chebyshev. 0 La minimisation au sens de Chebyshev s’exprime sous la forme: min coef de P max E(ej! ) !2[0; ] (2.85) Une méthode connue pour ce type de minimisation est fondée sur le théorème d’alternance. Théorème d’alternance: Si P (ej!P ) est une combinaison linéaire de 1 j! M fonctions sinusoïdales (i.e. P (e ) = M m=0 pm cos(m!)), une condition nécessaire et su¢ sante pour que P (ej! ) soit l’unique et la meilleure approxi0 mation pondérée au sens de Chebyshev de HD (ej! ) est que l’erreur pondérée E(ej! ) présente au moins M + 1 extrema sur l’intervalle d’approximation (tout intervalle compact de [0; [). Ceci se traduit par: Il existe M + 1 pulsations ! i telles que E(ej!i ) = E(ej!i +1 ), avec !0 < !2 < < !M et telles que: E(ej!i ) = max E(ej! ) pour ! 2 [0; [ Un algorithme appelé algorithme d’échange ou de Remez repose sur le théorème précédent. 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 47 Algorithme de Remez. Le théorème d’alternance donne un ensemble de conditions nécessaires et su¢ santes sur l’erreur commise. L’algorithme de Remez permet de résoudre le problème d’approximation en cherchant les fréquences extrêmes ! i de la meilleure approximation. La procédure est la suivante. On se donne a priori un ensemble ! i de M + 1 fréquences. Soit l’erreur d’approximation, ou ondulation tolérée, on doit obtenir: h 0 i 0 W (ej!i ) HD (ej!i ) P (ej!i ) = ( 1)i ; i = 0; 1; ;M (2.86) avec: M X1 j! P (e ) = pm cos(m!) m=0 La solution de (2.86) s’obtient par inversion matricielle: h 0 i [A] [p] = HD où: 0 B B B [A] = B B @ 1 cos ! 0 cos 2! 0 cos(M 1)! 0 1 .. . cos ! 1 .. . cos 2! 1 .. . cos(M 1)! 1 1 W (ej!0 ) 1 W 0 (ej!1 ) 1 cos ! M cos 2! M 1)! M ( 1)M W 0 (ej!M ) .. . .. . cos(M 0 B B B [p] = B B @ pM h 0 i B 0 B HD = B @ 1 p0 p1 .. . 1 0 C C C C C A HD (ej!0 ) 0 HD (ej!1 ) .. . 0 HD (ej!M ) 0 1 C C C C C A 1 C C C A L’inversion matricielle étant particulièrement lourde à e¤ectuer, on calcule de façon analytique: 0 = a0 HD (ej!0 ) + a0 W 0 (ej!0 ) a1 W 0 (ej!1 ) 0 + aM HD (ej!M ) + + ( 1)M aM W 0 (ej!M ) 48 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. expression dans laquelle: ak = M Y 1 i=0;i6=k cos ! k cos ! i Une fois ce calcul e¤ectué, la formule d’interpolation de Lagrange est utilisée pour interpoler P (ej! ) sur les M points ! 0 ,! 1 ,...,! M 1 . o PM 1 n k k=0 cos ! cos ! k ck n o P (ej! ) = P M 1 k k=0 cos ! cos ! k où: 0 ( 1)k ck = HD (ej!k ) et: k = W 0 (ej!k ) M Y1 i=0;i6=k ; pour k = 0; 1; ;M 1 cos ! k cos ! i On estime alors E(ej! ) sur un ensemble de fréquences su¢ samment dense. Si E(ej! ) quelquesoit !, alors l’approximation est trouvée. j! Si E(e ) > pour certaines fréquences alors on choisit un nouvel ensemble de M + 1 fréquences qui dé…nissent les extrema alternés de E(ej! ). Au cas où il y aurait plus de M + 1 fréquences on ne conserve que celles pour lesquelles E(ej! ) est maximum en respectant l’alternance de signes. Finalement la réponse impulsionnelle du …ltre est obtenue en passant des coe¢ cients pm aux coe¢ cients hn . Pour les …ltres calculés à partir de l’algorithme de Remez on a pu estimer des formules empiriques permettant de connaître l’ordre a priori en fonction des caractéristiques d’ondulation et de bande de transition. pour les …ltres de type passe-bas ou passe-haut: N ' 1 + D( 1 ; 2) 1 f f ( 1; 2) f (2.87) où: D( 1 ; 2) = [0:0053(log 1)2 + 0:0711 log 1 0:4761] log [0:0026(log d1 )2 + 0; 5941 log 1 + 0:4278] et f ( 1; 2) = 11:01 + 0:5124(log 1 log 2) expressions dans lesquelles log est le logarithme en base 10. 2 2.11. MÉTHODES DE SYNTHÈSE DES FILTRES RIF. 49 pour les …ltres de type passe-bande ou coupe-bande: N ' 1 + C( 1 ; 2) 1 fm g( 1 ; 2) fm où: C( 1 ; 2) = [0:012(log 1 )2 + 0:0966 log 1 0:5132] log 2 [0:002(log 1 )2 + 0; 5705 log 1 + 0:4431] et g( 1 ; 2) = 16:9 + 14:6(log 1 log fm = min( fi ) = min.des bandes de transition. 2) (2.88) 50 SYNTHÈSE DES FILTRES NON-RÉCURSIFS. En résumé: Filtre RIF Fonction de transfert: H(z) = PN 1 n n=0 hn z Contraintes de phase linéaire: H(ej! ) = Cas 1 '(!) = Solution : = Cas 2 '(!) = Solution : = PN 1 jn! n=0 hn e !; ! et hn = hN 1 n ; 0 n N 1 !; ! N 1 n 2 ; = 2 et hn = hN 1 n ; 0 H(ej! ) ej'(!) = N 1 2 Type 1 réponse symétrique N impair: H(ej! ) = e Type 2 réponse symétrique N pair: H(ej! ) = e 1=2)!) N j! N 2 j! N 2 1 1 1 P N2 1 n=0 an cos(n!) P N2 n=1 bn cos((n quelquesoit les valeurs des bn on a pour ! = ; H(ej ) = 0. Type 3 réponse antisymétrique N impair: H(ej! ) = e j! N 2 1 ej 2 P N2 1 n=1 cn sin(n!) quelquesoit les valeurs des cn on a pour ! = 0 et , H(ej0 ) = H(ej ) = 0. Type 4 réponse antisymétrique N pair: H(ej! ) = e 1=2)!) j! N 2 1 ej 2 P N2 n=1 dn sin((n quelquesoit les valeurs des dn on a pour ! = 0; H(ej0 ) = 0. Gabarit de réponse en amplitude de la façon suivante: f = f2 f1 bande de transition 2 Rc = f1 +f f raideur de coupure 1 : ondulation tolérée en bande passante 2 : ondulation tolérée en bande a¤aiblie Méthode de la fenêtre: Série de Fourier tronquée. Méthode aux valeurs propres: Minimisation d’une erreur quadratique. Approximation pondérée au sens de Chebyshev: minimisation de la forme min coef de P (Remez). max E(ej! ) !2[0; ] obtenue à l’aide de l’algorithme d’échange Conversion de fréquence La conversion de fréquence, au sens changement de la fréquence d’échantillonnage, a de nombreuses applications. On peut citer l’amélioration du rapport signal à bruit de quanti…cation pour l’acquisition de signal numérique (convertisseurs delta-sigma), la conversion numérique-analogique par suréchantillonnage (oversampling du CD audio), le passage entre di¤érentes fréquences normalisées (32kHz, 44,1Hz et 48 kHz du DAT), etc. 2.12 Conversion de fréquence La période d’échantillonnage est un élément essentiel dans de nombreux traitements numériques des signaux. Elle détermine souvent l’e¢ cacité ou la précision avec laquelle un traitement pourra être e¤ectué. Cependant dans certains cas on aura besoin de la changer a…n d’obtenir des algorithmes dont la cadence dépendra de la bande de fréquence à analyser. Le changement de fréquence se présente soit sous forme d’accroissement et on parle d’interpolation, soit sous forme de réduction et on parle injustement de décimation. Compte-tenu de la discrétisation on obtient les formes générales suivantes entre la plus grande fréquence prise égale à 1 et la plus petite fréquence: Interpolation: 1 > F , 1 F = L 2 N: Décimation: F < 1 , F = 0 Conversion: FF = celle de sortie.). 2.12.1 L M ; L; M 1 M;M 2 N: 2 N : (où F est la fréquence d’entrée et F 0 Réduction d’un facteur M Soit un signal x(n) correspondant à un échantillonnage à la fréquence 1, et supposons que son spectre occupe toute la bande X(ej2 f ) 6= 0; f 2 1 1 2; 2 . La réduction de fréquence d’un facteur M faisant passer la bande d’échantillonnage 1 1 1 1 de 2; 2 à 2M ; 2M , il est nécessaire de …ltrer avant de sous échantillon51 52 CONVERSION DE FRÉQUENCE Figure 2.38: Principe de réduction de fréquence ner pour éviter les phénomènes de repliements dûs à la nouvelle périodisation du spectre (…gure 2.39). Figure 2.39: Filtrage antirepliement Le …ltre est dé…ni par: H(ej2 f ) = 1 pour jf j < 0 ailleurs 1 2M (2.89) P A la sortie du …ltre on obtient la séquence w(n) = +1 k) k= 1 h(k)x(n et la séquence y(m) s’en déduit par: y(m) = w(mM ). P La relation entrée/sortie s’écrit: y(m) = +1 k). Le k= 1 h(k)x(mM spectre de y (m) est donné …gure (2.40). L’ensemble …ltrage/sous échantillonnage n’est pas invariant dans le temps, puisque pour une séquence x(n) donnée il y a M façons de calculer la séquence y(m). En d’autres termes si on sous échantillonne le signal x(n p) p ) sauf si p = qM , q 2 N . alors la sortie n’est pas y(m M 2.12. CONVERSION DE FRÉQUENCE 53 Figure 2.40: Spectre du signal après sous-échantillonnage Etablissons les relations entre les transformées en z desquelles on déduira les relations entre les transformées de Fourier. Soit la séquence v(n) telle que: v(n) = w (n) pour n = 0; M; 2M; : : : 0 ailleurs (2.90) . Cela se traduit par: v(n) = w(n) +1 X (n mM ) (2.91) m= 1 Figure 2.41: Train d’impulsions équivalent pour le sous-échantillonnage P Où +1 mM ) (…gure 2.41) est un train d’impulsions unités m= 1 (n périodiques qui peut encore s’exprimer sous la forme: +1 X m= 1 (n mM ) = M 1 1 X j2 e M m M (2.92) r=0 1 On obtient par substitution v(n) = w(n) M PM r=0 1 j2 e m M et comme y(m) = 54 CONVERSION DE FRÉQUENCE v(mM ) = w(mM ), il s’ensuit: Y (z) = +1 X v(mM )z m = m= 1 +1 X v(m)z m M (2.93) m= 1 Remplaçant v(m) par son expression en fonction de w(m): Y (z) = M 1 1 X W e M j2 r M 1 zM (2.94) r=0 Compte tenu de ce que W (z) = H(z)X(z), l’expression de Y (z) s’écrit …nalement: M 1 1 X Y (z) = H e M j2 r M 1 zM X e j2 r M 1 zM (2.95) (f r) M (2.96) r=0 1 1 2; 2 Soit sur le cercle unité z = ej2 f ; f 2 j2 f Y (e M 1 1 X )= H ej2 M (f r) M : X ej2 r=0 Dans le cas d’un …ltre idéal, H ej2 (f r) M f M = 0 pour r 6= 0, d’où: 1 Y (ej2 f ) = M X ej2 Dans la pratique, le …ltre passe-bas doit faire en sorte que les com1 posantes en fréquence pour jf j > 2M soient négligeables. Ce qui signi…e que tous les termes tels que r 6= 0 sont presque nuls, d’où: Y (ej2 f ) f j2 M 1 MX e Si le spectre de la séquence x(n) était e¤ectivement limité à la bande 1 1 1 1 M . 2M ; 2M alors on aurait exactement: Y (z) = M X z 2.12.2 Interpolation par un facteur L Dans ce cas (…gure 2.42) on a 1 = LF . Le procédé doit permettre d’ajouter (L 1) échantillons utiles entre deux x(n) consécutifs. Figure 2.42: Principe de l’augmentation de fréquence 2.12. CONVERSION DE FRÉQUENCE 55 N’ayant aucune information sur les (L 1) échantillons manquants, on commence par intercaler (L 1) échantillons nuls entre deux x(n) consécutifs, on obtient la séquence w(m) dé…nie par: w(m) = x m pour m = 0; L; 2L; : : : L 0 ailleurs (2.97) Figure 2.43: Signal et spectre avant suréchantillonnage Dont la transformée en z est: W (z) = +1 X w (m) z m = m= 1 +1 X x (m) z mL = X zL (2.98) m= 1 Le spectre (…gure 2.44) de w(m) est donc celui de x(n) (…gure 2.43) complété par les images autour de L1 , L2 ,: : :, il faut donc …ltrer à l’aide d’un passe-bas pour éliminer ces images et obtenir un spectre équivalent à celui de x(n) mais échantillonné à 1. Figure 2.44: Signal et spectre après insertion de L 1 zéros Soit le …ltre dé…ni par: H ej2 f = G pour jf j < 0 ailleurs 1 2L (2.99) 56 CONVERSION DE FRÉQUENCE L’expression du spectre de y(m) (…gure 2.45) en fonction de celui de x(n) est: Y (ej2 f ) = H(ej2 f )X(ej2 fL ) Figure 2.45: Signal et spectre après suréchantillonnage Soit d’après l’équation (2.99): Y (ej2 f ) = GX(ej2 f L ) pour jf j < 0 ailleurs 1 2L (2.100) A…n d’assurer la correspondance en amplitude des échantillons, le gain G doit être égal à L. En e¤et si l’on raisonne sur y(0), il vient: y(0) = y(0) = 1=2 R Y ej2 1=2 1=2L R f df = H ej2 f X ej2 fL df 1=2 GX ej2 fL df = G 1=2L k) 1=2 R 1=2 R X ej2 f 0 0 df L = G L x(0) 1=2 D’où le résultat G = L. P P+1 k La relation de …ltrage s’écrit: y(m) = +1 k= 1 w(k)h(m k) = k= 1 x( L )h(m P Posons k = rL ! y(m) = +1 rL). r= 1 x(r)h(m Une autre expression peut être obtenue à l’aide du changement de notation suivant : m m r= m n, et m L L L = hmiL , où L désigne la partie entière et hmiL = m modulo L. P m m Il vient: y(m) = +1 n n= 1 h m L L + nL x L En notant hm (n) = h (nL + hmiL ) on obtient l’écriture condensée: y (m) = +1 X n= 1 hm (n) x jmk L n (2.101) 2.12. CONVERSION DE FRÉQUENCE 57 On retrouve l’écriture d’une convolution discrète dans laquelle hm (n) est la réponse impulsionnelle d’un …ltre non-invariant, elle est périodique de période L. hm (n) = h (nL + hmiL ) pour tout m et n. (2.102) 2.12.3 Conversion d’un facteur L/M Le signal x(n) est échantillonné la fréquence F , et nous voulons calculer le 0 signal y(n) à une fréquence F telle que: 0 F F = L M ; L; M 2 N (…gure 2.46). Figure 2.46: Principe de base de la conversion de fréquence Les opérations de décimation et d’interpolation ayant lieues en même temps le …ltre de fonction de transfert H(z) doit être tel que: H ej2 f" = L pour jf "j 0 ailleurs min 1 1 2L ; 2M (2.103) où f " est la fréquence normalisée par rapport à LF . P h(k rL)x(r), et d’autre part y(m) = On a d’une part v(k) = +1 r= 1 P+1 v(mM ). Ce qui donne y(m) = r= 1 h(mM rL)x(r). mM Utilisons: r = m n, et mM L = hmM iL il vient: L L y (m) = +1 X h mM n= 1 mM L + nL x L mM L n (2.104) Et …nalement: y (m) = +1 X n= 1 h (nL + hmM iL ) x mM L n (2.105) Posons à nouveau hm (n) = h (nL + hmM iL ), on obtient l’expression générale1 : +1 X mM y (m) = hm (n) x n (2.106) L n= 1 1 On retrouve le cas de l’interpolateur en faisant M = 1, et on en déduit une écriture équivalente pour le décimateur en faisant L = 1. En résumé: Décimateur: hm (n) = h nM + hmiM Interpolateur: hm (n) = h nL + hmiL Convertisseur: hm (n) = h nL + hmM iL 58 CONVERSION DE FRÉQUENCE De ce qui précède on déduit le spectre de y(m). Tout d’abord: V ej2 f" = H ej2 f" X ej2 f "L D’autre part: Y (ej2 f0 )= M 1 1 X V M ej2 (f 0 l) M l=0 Soit: Y (ej2 f0) = 1 M PM l=0 1 H ej2 (f 0 l) M X ej2 (Lf 0 l) M Compte tenu de la dé…nition de H(ej2 f ), il vient: Y (ej2 f0 )= 8 < : L MX 0 ej2 0 Lf M pour f 0 min 1 M 2 ; 2L (2.107) ailleurs En résumé le procédé de changement de fréquence dans un rapport peut être vu comme un système linéaire, périodiquement variant dans le temps, dont la réponse impulsionnelle hm (n) s’exprime en fonction de la réponse impulsionnelle d’un …ltre invariant connu pour la plus haute fréquence d’échantillonnage. L M 2.13 Notion de composantes polyphases Dans une implantation directe du …ltrage qui précède une décimation d’un facteur M , on calcule M 1 échantillons inutiles, de même pour une interpolation d’un facteur L, on insère L 1 échantillons nuls que l’on peut prendre en compte pour réduire la charge de calcul. La répartition de charge de calcul qui permet de faire travailler le …ltre à la plus basse fréquence (ie celle de sortie pour la décimation, celle d’entrée pour l’interpolation) est obtenue à l’aide de l’implantation du ‡tre sous forme de ses composantes polyphases. 2.13.1 Implantation polyphase et notations conventionnelles Il existe deux types d’écritures des composantes polyphases d’un …ltre, elles correspondent au schéma de décimation pour le type 1 et au schéma d’interpolation pour le type 2. La notion de composantes polyphases étant applicable aux …ltres de type RIF et RII, nous utiliserons la fonction de +1 P transfert H (z) = hn z n . n= 1 2.13. NOTION DE COMPOSANTES POLYPHASES 59 Polyphase de Type 1 La représentation polyphase de type 1 est utilisée pour la décimation. On écrit: M X1 H (z) = Em z M z m (2.108) m=0 où : Em (z) = +1 P em (n) z n et em (n) = hnM +m . n= 1 Les Em (z) sont les composantes polyphases de H (z) et Em ej2 passe-tout dans la bande f0 = f M f0 = [ 1=2; 1=2] si H ej2 f . f0 = 1 pour jf j < est 1 2M , Polyphase de Type 2 La représentation polyphase de type 2 est utilisée pour l’interpolation. Elle correspond à une simple réécriture du type 1. H (z) = L X1 Rl z L z (L 1 l) (2.109) l=0 où : Rl (z) = EL 1 l (z) = +1 P rl (n) z n et rl (n) = eL 1 l (n) = n= 1 hnL+L 1 l . Remarque : dans le cas de …ltres de longueurs …nies (RIF), la mise en œuvre est rendue plus simple si la longueur N du …ltre est un multiple de M ou L, car dans ce cas toutes les composantes polyphases sont de même longueur. 2.13.2 Exemples Décimation M = 2 La …gure (??) correspond à un implantation directe à l’aide de la représentation polyphase. En considérant que le sous échantillonnage ne conserve que les échantillons d’indice pair, on peut aisément véri…er que: ym = s0 (2n) + s1 (2n) où: s0 (2n) = h0 x2n + h2 x2n s1 (2n) = h1 x2n 1 2 + h3 x2n + ::: 3 + ::: De même, on constate l’inutilité du calcul de l’échantillon suivant qui est écarté par le sous échantillonnage. Ceci conduit à la représentation de la 60 CONVERSION DE FRÉQUENCE Figure 2.47: Décimation : implantation directe. Figure 2.48: Décimation : implantation polyphase. …gure(2.48), pour laquelle tous les échantillons de sortie sont utiles, le sous échantillonnage ayant été reporté à l’entrée. Dans cette structure chaque …ltre Em (z) travaille ùà la fréquence la plus basse, celle de sortie. Interpolation L = 2 Par transposition le schéma de la …gure(2.49) donne l’implantation polyphase d’un interpolateur. Les sorties y0 (m) et y1 (m) ont la forme: y0 (m) = :::0; y0 (2m) ; 0; y0 (2m + 2) ; 0; ::: y1 (m) = :::0; y1 (2m) ; 0; y1 (2m + 2) ; 0; ::: On en déduit la sortie ym = :::y1 (2m) ; y0 (2m) ; y1 (2m + 2) ; y0 (2m + 2) ; ::: 2.13. NOTION DE COMPOSANTES POLYPHASES 61 Figure 2.49: Interpolation : implantation polyphase. Dans cette structure chaque …ltre Rl (z) travaille à la fréquence la plus basse, celle d’entrée. 2.13.3 Propriétés Commutativité C’est le problème de la mise en cascade d’un décimateur et d’un interpolateur (…gure 2.50). Figure 2.50: Commutativité décimation-interpolation yn = xn où M (n) = P+1 r= 1 M (n) = xn n = 0 modulo M 0 ailleurs (2.110) (n + rM ) Y (z) = M 1 1 1 X r X z M WM M r=0 (2.111) 62 CONVERSION DE FRÉQUENCE Soit en fréquence: j2 f Y (e M 1 1 X )= X ej2 M (f r) M (2.112) r=0 Ainsi Y (ej2 f ) contient des versions repliées de X(ej2 f ) mais à la même fréquence d’échantillonnage et donc à la même échelle de fréquence. Les opérations de décimation et d’interpolation ne sont pas invariantes dans le temps. Aussi lorsqu’on utilise un …ltre il est important de savoir si celui-ci est placé avant ou après l’opération. Un théorème important indique les équivalences suivantes illustrées …gure (2.51). Figure 2.51: Illustration de la permutation …ltre-changement de fréquence On interprète ceci en disant que le …ltrage par H(z) à une fréquence donnée fe est équivalent au …ltrage par H z M une fréquence M fe . La réponse impulsionnelle de H(z M ) est celle de H(z) interpolée par un facteur M. Linéarité Les opérations de décimation et d’interpolation sont linéaires, donc toute opération sans mémoire peut commuter avec la décimation et l’interpolation (…gure 2.52). Figure 2.52: Commutation et linéarité 2.13. NOTION DE COMPOSANTES POLYPHASES 63 Permutation Le schéma de la …gure (2.53) est correct si M et L sont premiers entre eux. Figure 2.53: Permutation décimation-interpolation. En résumé: Le changement de fréquence d’échantillonnage nécessite la présence de …ltres permettant d’éliminer les images des spectres associés à la nouvelle périodisation. Soit pour éviter le repliement, cas du sous échantillonnage, soit pour supprimer les périodes indésirables, cas du sur échantillonnage. La fonction de …ltrage peut s’e¤ectuer soit en un seul étage, soit en plusieurs étages. Dans chaque con…guration on peut utiliser la structure directe du …ltre ou son implantationPsous forme de composantes polyphases. 1 M z m Polyphase de Type 1: H (z) = M m=0 Em z +1 P où : Em (z) = em (n) z n et em (n) = hnM +m . n= 1 P 1 L z (L 1 l) Polyphase de Type 2: H (z) = L l=0 Rl z +1 P où : Rl (z) = EL 1 l (z) = rl (n) z n et rl (n) = eL 1 l (n) = hnL+L 1 l. n= 1 64 CONVERSION DE FRÉQUENCE Filtrage Multicadence 2.14 Traitement en sous-bandes Dans beaucoup d’applications il peut être intéressant de séparer le signal d’entrée en plusieurs composantes en sous-bandes. Ceci permet en e¤et de situer la ou les bandes de fréquence où l’on peut trouver l’information. Une utilisation est, par exemple, le codage en vue de comprimer l’information transmise et qui consiste à ne prendre en compte que les bandes de fréquences dans lesquelles l’énergie est supérieure à un certain seuil. A cette …n il faut disposer de …ltres passe-bandes. Certaines précautions sont prendre: si on utilise un ensemble de …ltres passe-bandes quelconques, la quantité d’informations à traiter peut augmenter considérablement. on doit pouvoir reconstituer le signal original à partir des signaux issus de chaque sous-bande. Le problème de la croissance de la quantité d’informations est résolu assez simplement. Considérons que le signal est décomposé en M sous1 bandes de même largeur (soit 2M ), alors il est possible de sous échantillonner le signal de sortie de chaque …ltre par un facteur M . La fréquence globale de traitement est conservée, il n’y a donc pas accroissement de la quantité d’informations (…gure 2.54). Par contre le sous-échantillonnage crée un repliement inévitable avec des …ltres physiquement réalisables. Il devient alors di¢ cile de retrouver le signal original à partir des signaux sous échantillonnés de chaque sousbande. L’élimination des e¤ets de repliement est rendue possible par une synthèse correcte des …ltres pour laquelle on obtiendra une reconstruction parfaite. 2.14.1 Banc de …ltres La …gure (2.55) donne une réalisation de banc de …ltres. Dans la mesure où chaque sous-bande est traitée à une fréquence M fois plus petite que la fréquence d’échantillonnage d’entrée et qu’il y a M sous-bandes, il y a conservation de la quantité d’informations. 65 66 FILTRAGE MULTICADENCE Figure 2.54: Principe du traitement en sous-bandes Figure 2.55: Banc de …ltres (analyse et synthèse) Un banc dans lequel le facteur de décimation est égal au nombre de sousbandes est dit à échantillonnage critique ou maximalement décimé. Lorsque les sous-bandes sont toutes de même largeur on dit banc de …ltres uniforme sinon il est non uniforme. Dans la structure de la …gure précédente toutes les voies sont échantillonnées de manière synchrone, c’est à dire que tous les M échantillons d’entrée, fe on on calcule les Xr (m). Dans la mesure où l’on travaille à la fréquence M peut traiter les Xr (m) de manière séquentielle au rythme de fe . Lorsque n = mM on a a¤aire à un échantillon dans la bande M 1 pour XM 1 (m), l’instant suivant n = mM + 1 c’est pour XM 2 (m) et ainsi de suite jusqu’à l’instant n = mM + M 1 où l’on calcule X0 (m). A l’échantillon suivant on recommence. Ceci donne la structure de la …gure (2.56). 2.14. TRAITEMENT EN SOUS-BANDES 67 Figure 2.56: Structure d’implantation d’un banc de …ltres. 2.14.2 Reconstruction ^ r (m) = Xr (m) et la sortie x Si il n’y a pas de traitement intermédiaire X ^n doit être égale xn D oùPD est un retard acceptable. P 1 P+1 ^ ^n = M Soit alors Xr (m) = +1 n= 1 Xr (m)fr (n r=0 n= 1 xn hr (mM n), et x mM ), le signal reconstitué. P ^ r (m) par +1 xn hr (mM n), il vient: En remplaçant X n= 1 x ^n = +1 X xp hV (n; p) (2.113) p= 1 où hV (n; p) est une réponse non invariante donnée par: hV (n; p) = M +1 X1 X fr (n mM )hr (mM p) (2.114) r=0 n= 1 On obtiendra la reconstruction parfaite si: hV (n; p) = (n p Une condition nécessaire de reconstruction parfaite est donc: M +1 X1 X fr (n mM )hr (mM p) = (n p D) D): (2.115) r=0 n= 1 L’équation (2.115) est dite condition de biorthogonalité. Déterminer les hr (n) et les fr (n) qui satisfont cette égalité n’est pas trivial. Cependant une solution évidente qui n’a pas d’intérêt pratique est de remplacer toutes les fonctions de transfert de la deuxième structure par un gain unité. Dans ce cas les Xr (m) correspondent aux composantes polyphases de l’entrée et la reconstruction consiste simplement à les juxtaposer avec un retard de M 1 échantillons. Une telle solution n’a pas d’intérêt pratique car toutes les sous-bandes ont la même largeur que la bande du signal original. Cependant elle montre que même si le repliement est important, on peut complètement l’annuler. 68 FILTRAGE MULTICADENCE 2.15 Banc de …ltres à M voies Ecrivons la relation entrée-sortie du banc de …ltres de la …gure (2.55). M 1 1 X l ^ X (z) = X zWM M l=0 M X1 l Hk zWM Fk (z) (2.116) k=0 2 où : WM = e j M . ^ ej2 Dans l’équation (2.116) le spectre X f apparaît comme la combinail son linéaire de M versions uniformément décalées du spectre X ej2 (f M ) . Pour que le banc de …ltres permette une reconstruction du signal d’entrée l’expression (2.116) doit pouvoir se mettre sous la forme générale: ^ (z) = T (z)X (z) X (2.117) Cela revient à éliminer les M 1 repliements représentés par les termes l X zWM pour l = 1; ; M 1. 1 PM 1 l Soit en posant Al (z) = M k=0 Hk zWM Fk (z), on doit véri…er : Al (z) = 0 pour l = 1; T (z) = A0 (z) = ;M 1 (2.118) M 1 1 X Hk (z) Fk (z) M k=0 2.15.1 Erreur de reconstruction T (z) est appelée fonction de distorsion et représente la fonction de transfert du banc de …ltres lorsque le repliement est annulé. Il y aura distorsion d’amplitude si T ej2 f n’est pas une constante et distorsion de phase si T (z) n’est pas à phase linéaire. Le sytème sera donc dit à reconstruction parfaite si T (z) = cz n0 , dans ce cas x ^n = cxn n0 . 2.15.2 Résolution directe La résolution directe passe par l’écriture matricielle de (2.118). 2 3 2 H0 (z) H1 (z) HM 1 (z) A0 (z) 6 H1 (zWM ) HM 1 (zWM ) 6 A1 (z) 7 6 H0 (zWM ) 6 7 6 .. .. .. .. M6 7=6 .. . . . . 4 5 4 . AM 1 (z) M H0 zWM 1 M H 1 zM 1 M A (z) = HTm (z) f (z) HM 1 32 76 76 76 74 5 M 1 zM (2.119) (2.120) F0 (z) F1 (z) .. . FM 1 (z) 3 7 7 7 5 2.15. BANC DE FILTRES À M VOIES 69 La matrice HTm (z) est dite matrice des composantes repliées et Hm (z) est dite matrice de modulation. La condition d’annulation des repliements s’écrit: HTm (z) f (z) = t (z) (2.121) 3 3 2 2 M T (z) M A0 (z) 7 7 6 6 0 0 7 7 6 6 où : t (z) = 6 7 7=6 .. .. 5 5 4 4 . . 0 0 Etant donné HTm (z), le banc de …ltres de synthèse est donné par: 1 f (z) = HTm (z) t (z) = Adj HTm (z) t (z) det (HTm (z)) (2.122) Ceci est possible tant que det HTm (z) 6= 0. Bien que l’inversion matricielle puisse être possible, plusieurs di¢ cultés peuvent être rencontrées. 1. Par inversion Fk (z) peut être RII même si les Hk (z) sont RIF. La stabilité ne sera assurée que si les racines de det HTm (z) sont à l’intérieur du cercle unité (minimum de phase). Ceci rend très complexe la détermination des …ltres Hk (z) du banc d’analyse. 2. Si l’on impose la reconstruction parfaite, alors f (z) =Adj HTm (z) t (z) et T (z) = cz n0 det HTm (z) . Les Fk (z) sont alors RIF si les Hk (z) le sont, mais leur degré qui dépend de celui des déterminants Adj HTm (z) peut être très grand. 2.15.3 Résolution polyphase En reprenant les expressions polyphases de type 1 (2.108) pour Hk (z) et de type 2 (2.109) pour Fk (z): Hk (z) = Fk (z) = M X1 l=0 M X1 Ekl z M z l Rlk z M z (M 1 l) l=0 Il vient: h (z) = E z M e (z) T f (z) = z où : (M 1) ~ e (z) R z (2.123) M 70 FILTRAGE MULTICADENCE h (z) = H0 (z) H1 (z) e (z) = 1 z 1 ~ e (z) = z (M 1) 2 6 6 E zM = 6 4 R zM 2 6 6 =6 4 z z (M 1;0 zM R00 z M R10 z M .. . RM 1;0 zM 1 (z) T T (M 1) 2) E00 z M E10 z M .. . EM HM 1 E01 z M E11 z M .. . EM 1;1 1;1 .. zM EM 1 zM zM zM 1;M 1 R0;M R1;M .. 1 .. . . zM R01 z M R11 z M .. . RM E0;M E1;M 1 1 zM zM .. . . RM 1;M 1 zM 3 7 7 7 5 3 7 7 7 5 La …gure (2.55) se redessine sous la forme (2.57), et en utilisant les propriétés de commutativité sous la forme (2.58), où P (z) = R (z) E (z) : Figure 2.57: Réalisation polyphase. On peut constater que P (z) = I conduit à un banc à reconstruction parfaite. 2.15.4 Relation entre les matrices polyphase et de modulation Compte tenu des dé…nitions de E (z) et Hm (z) on peut facilement véri…er que: (2.124) HTm (z) = Wy D (z) ET z M où : D (z) =diag 1 z de taille M M . 1 z (M 1) et W est la matrice de TFD 2.15. BANC DE FILTRES À M VOIES 71 Figure 2.58: Réduction de schéma. En e¤et: i M 1 h (z) h (zWM ) h zWM h M e (z) e (zWM ) e zWM = E zM Hm (z) = h 2 6 k = D (z) 6 Avec e zWM 6 4 2.15.5 1 WMk .. . (M 1) WM 3 1 i 7 7 7 on obtient (2.124). 5 Condition générale de reconstruction parfaite La condition P (z) = R (z) E (z) = I est une condition su¢ sante de reconstruction parfaite que le système soit RIF ou RII. De façon plus générale si l’on choisit P (z) = R (z) E (z) = cz n0 I, on a encore reconstruction parfaite avec T (z) = cz (M n0 +M 1) . Ces deux solutions ne sont que su¢ santes, une CNS est donnée par: P (z) = R (z) E (z) = cz n0 0 IM 1 z Ir 0 r (2.125) où c est une constante, r est un entier tel que 0 r M 1, et n0 2 N. On obtient x ^n = xn m0 , avec m0 = M n0 + r + M 1. La condition donnée par (2.125) implique pour des …ltres RIF ou RII: det R (z) det E (z) = cz K0 (2.126) Si l’on impose en plus que l’ensemble des …ltres soit RIF, alors: det E (z) = z K1 (2.127) 72 FILTRAGE MULTICADENCE Figure 2.59: Schéma pour la reconstruction parfaite. Le résultat (2.125) implique que det R (z) est de la même forme. Reprenons le schéma d’implantation polyphase …gure (2.59). Ecrivons l’équation de …ltrage en termes des éléments Ps;l (z) de P (z). Vl (z) = Us (z) = 1 M M P1 k=0 M P1 l 1 k z M WM 1 k X z M WM pour 0 l M 1. Ps;l (z) Vl (z). l=0 ^ (z) est donnée par X ^ (z) = La sortie X M P1 z (M 1 s) U s z M . Soit par s=0 substitution: M X1 k ^ (z) = 1 X X zWM M k=0 M X1 WMkl M X1 z lz (M 1 s) Ps;l z M (2.128) s=0 l=0 La suppression du repliement est l’élimination de tous les termes correspondant à k 6= 0. Ce qui se traduit par: M X1 WMkl l=0 En notant Bl (z) = M X1 z lz (M 1 s) s=0 M P1 z lz (M 1 s) P Ps;l z M , k 6= 0 s;l (2.129) z M , cela se traduit par: s=0 2 6 6 Wy 6 4 B0 (z) B1 (z) .. . BM 1 (z) 3 2 7 6 7 6 7=6 5 4 > 0 .. . 0 3 7 7 7 5 (2.130) 2.15. BANC DE FILTRES À M VOIES où W est la matrice M M de Compte tenu de WWy = I (2.130) 2 B0 (z) 6 B1 (z) 6 6 .. 4 . BM 1 (z) 73 la TFD et > est une valeur quelconque. s’écrit: 3 3 2 > 7 6 0 7 7 7 6 (2.131) 7 = W 6 .. 7 5 4 . 5 0 la solution de (2.131) est : Bl (z) = B (z) = M P1 z lz (M 1 s) P s;l zM , s=0 0 l M 1. Ecrivons l’égalité précédente pour deux polynômes consécutifs Bl (z) et Bl+1 (z): Bl (z) = z M P1 z lz (M 1 s) P s;l zM = s=0 lP M M 1;l z Bl+1 (z) = M P1 M P2 z lz (M 1 s) P s;l MP 0;l+1 zM zM + s=0 z lz 1 z (M 1 s) P s;l+1 zM s=0 Bl+1 (z) = Bl+1 (z) = M P1 s=1 M P2 z lz 1 z (M 1 s) P z lz (M 1 s) P s;l+1 s+1;l+1 zM + z lz zM + z lz MP 0;l+1 zM s=0 Ps+1;l+1 (z) = Ps;l (z) , s = 0; ;M 2 z 1 P0;l+1 (z) = PM 1;l On en déduit que les éléments Ps;l (z) de la matrice P (z) se déduisent les uns des autres colonne par colonne, les éléments de la colonne l sont obtenus en décalant circulairement d’un cran vers le haut ceux de la colonne l + 1, l’élément de la ligne 0 se retrouvant à la ligne M 1 a¤ecté d’un facteur z 1 . La matrice P (z) est donc complètement dé…nie par la ligne 0. Exemple: Une matrice 3 3 aurait la forme: 2 3 P0 (z) P1 (z) P2 (z) P1 (z) 5 P (z) = 4 z 1 P2 (z) P0 (z) 1 1 z P1 (z) z P2 (z) P0 (z) Avec Bl (z) = Bl+1 (z) =) Les matrices de cette forme sont dites pseudo-circulantes. Ayant réalisé l’annulation des repliements, l’équation (2.128) devient ^ (z) = T (z) X (z) avec: X T (z) = M 1 1 X z M s=0 (M 1 s) M X1 l=0 z l Ps;l z M 74 FILTRAGE MULTICADENCE Compte tenu des relations entre les Ps;l (z), on note Pl (z) = P0;l (z), il vient: M X1 T (z) = z (M 1) z l Pl z M (2.132) l=0 L’équation (2.132) est une condition nécessaire et su¢ sante d’élimination du repliement pour le banc de …ltres à décimation maximale. La matrice (M M ) P (z) dont la ligne de rang 0 est dé…nie par Pl (z) est pseudocirculante. Si l’on rajoute la condition de reconstruction parfaite T (z) = cz n0 , l’équation (2.132) implique que les Pl (z) sont tous nuls sauf un dont la forme est Pl (z) = cz n0 . On en déduit que la ligne de rang 0 de P (z) a la forme particulière 0 0 cz n0 0 0 Autrement dit: P (z) = R (z) E (z) = cz 0 IM 1 z Ir 0 n0 r (2.133) Soit : T (z) = cz 2.15.6 r z (M 1) z n0 M (2.134) Simpli…cation du problème La particularité de la matrice P (z) n’indique pas le moyen d’obtenir les …ltres Hk (z) ou Fk (z), la complexité augmente avec M . Aussi l’obtention de solutions particulières nécessite d’imposer certaines contraintes limitant le nombre de degrés de libertés. On pourra imposer: 1. M = 2. C’est un cas particulier o¤rant plusieurs solutions dont l’une peut se connecter à la notion d’analyse par ondelettes. k . Ceci conduit à un banc de …ltre de type 2. Hk (z) vient de H0 zWM TFD. 3. Une contrainte de phase linéaire: Hk (z) = 4. Une contrainte d’image miroir par paire: z HM HM 5. Imposer un système paraunitaire: Fk (z) = z 2.16 (N 1) H z k 1 (z) = Hk ( z) , pour M impair (z) = z (N 1) Hk z 1 , pour M pai k 1 k 1 (N 1) H k z 1 Banc de …ltres à 2 voies Intéressons nous d’abord au cas de deux sous-bandes. Ce n’est pas très restrictif puisqu’une simple structure en arbre (ou encore pyramidale) permet d’étendre à M = 2m sous-bandes (…gure 2.60). 2.16. BANC DE FILTRES À 2 VOIES 75 Figure 2.60: Structure pyramidale Figure 2.61: Banc de …ltres à deux voies 2.16.1 Analyse du signal reconstruit Le banc de …ltres à deux peut se représenter comme indiqué …gure (2.61). On obtient successivement: ^ (z) = F0 (z)S^0 (z) + F1 (z)S^1 (z) 1. X ^ 2. S^0 (z) = S0 (z 2 ) et S1(z) = S1 (z 2 ) 3. S0 (z) = 1 2 P1 ~ r=0 S0 1 z 2 W2r et S1 (z) = 1 2 4. S~0 (z) = H0 (z)X(z) et S~1 (z) = H1 (z)X(z) 1 P1 ~ r=0 S1 1 1 z 2 W2r 1 1 5. D’après 3, 4 devient: S0 (z) = 12 [H0 (z 2 )X(z 2 ) + H0 (z 2 W21 )X(z 2 W21 )], or W21 = e j = 1, on en déduit: 1 [H0 (z) X (z) + H0 ( z) X ( z)] 2 1 = [H1 (z) X (z) + H1 ( z) X ( z)] 2 S0 z 2 = S1 z 2 76 FILTRAGE MULTICADENCE 6. Soit pour la relation entrée-sortie: ^ (z) = 1 [H0 (z) F0 (z) + H1 (z) F1 (z)] X (z) + X 2 1 [H0 ( z) F0 (z) + H1 ( z) F1 (z)] X ( z) 2 (2.135) ^ (z) dépend de X (z) et L’équation de …ltrage (2.135) montre que X X ( z). Le dernier terme représente le repliement lié à la décimation par le ^ (z) = T (z) X (z) + A (z) X ( z), on peut exprimer facteur 2. En écrivant X les conditions de reconstruction parfaite par: 1. A (z) = 0 c’est la condition su¢ sante de non repliement. 2. T (z) = cz phase. D c’est la condition de non distorsion d’amplitude et de Conditions d’annulation de repliement Si l’on exprime les conditions de reconstruction parfaites à l’aide de la matrice des composantes modulées: H0 (z) H1 (z) H0 ( z) H1 ( z) la solution est donnée par : ( F0 (z) = F1 (z) = F0 (z) F1 (z) = 2z 0 D 2z D D(z) H1 ( z) 2z D D(z) H0 ( z) (2.136) (2.137) où D (z) = H0 (z) H1 ( z) H0 ( z) H1 (z). Si H0 (z) et H1 (z) sont RIF, F0 (z) et F1 (z) le sont aussi si D (z) = 2z D En choisissant: F0 (z) = H1 ( z) (2.138) F1 (z) = H0 ( z) il y a annulation de repliement. Condition de reconstruction parfaite Les relations (2.138) étant satisfaite la fonction de transfert s’écrit: 1 [H0 (z) H1 ( z) H1 (z) H0 ( z)] = z D (2.139) 2 Il y a reconstruction parfaite car T (z) est sans distorsion d’amplitude T ej2 f = 1 et sans distorsion de phase arg T ej2 f = 2 Df . En remarquant que T (z) est de la forme 12 (P (z) P ( z)), on obtient un pôlynome qui ne présente que des puissances impaires de z. Si une solution existe elle est de la forme P (z) P ( z) = 2z D , cela impose donc que D soit impair. T (z) = 2.16. BANC DE FILTRES À 2 VOIES 2.16.2 77 Théorème de la reconstruction parfaite La reconstruction parfaite est obtenue si x ^n = xn D . Les conditions nécessaires de reconstruction parfaite (RP) sont données par le théorème suivant. Théorème: Considérons un banc de …ltres à deux voies satisfaisant aux conditions NX 0 1 h0 (n) z n et H1 (z) = d’annulation de repliement et soient H0 (z) = n=0 NX 1 1 h1 (n) z n. La condition pour que T (z) = z D, avec D impair, est n=0 atteinte si les coe¢ cients de la réponse impulsionnelle de : P (z) = H0 (z) H1 ( z) = N0 +N X1 2 pn z n (2.140) n=0 satisfont à: pn = 1 pour n = D 0 pour n impair, n 6= D (2.141) Ceci est immédiat: T (z) = N0 +N X1 2 tn z n=0 n 1 = 2 N0 +N X1 2 (pn n ( 1) pn ) z n=0 n ! il vient: 1 tn = pn (1 2 ( 1)n ) = 1 pour n = D 0 pour n 6= D Pour certaines applications, la RP n’est pas forcément obligatoire. On obtient alors un banc de …ltres à reconstruction presque parfaite (RPP), utilisable pour peu que lerreur de reconstruction reste su¢ samment faible. 2.16.3 Types de solutions Les solutions sont liées à (2.140) et peuvent être réparties en 3 catégories, chacune pouvant être RP et/ou RPP et les …ltres étant ou non à phase linéaire: 1. solutions QMF, dans ce cas H0 (z) et H1 (z) sont liés par: H1 (z) = H0 ( z) 2. solutions Orthogonales, dans ce cas H0 (z) et H1 (z) sont liés par: H1 (z) = z (N0 1) H0 z 1 3. solutions Biorthogonales, on n’impose pas de relation entre H0 (z) et H1 (z) 78 FILTRAGE MULTICADENCE Avant de détailler chaque cas, on peut récapituler les solutions possibles sous la forme du tableau suivant: Type QMF QMF Orth Biorth Biorth Biorth Biorth 2.16.4 Relation H1 (z) = H0 ( z) H0 ( z) Phase Longueurs lin. no lin. paire paire Nombre d’inconnues N0 =2 N0 (N0 1) no lin. paire N0 lin. lin. no lin. no lin. paire-paire imp.-imp. paire-paire imp.-imp. (N0 + N1 ) =2 (N0 + N1 ) =2 + 1 N0 + N1 N0 + N1 z H0 z D RP N0 1 < (N0 1) N0 1 RP/RP RPP RP/RP 1 (N0 + N1 ) =2 1 (N0 + N1 ) =2 1 < (N0 + N1 ) =2 1 < (N0 + N1 ) =2 1 Filtres QMF Reconstruction parfaite: Si l’on rajoute la contrainte H1 (z) = H0 ( z), l’ensemble des solutions obtenues est dit miroir en quadrature ou QMF pour Quadrature Mirror Filters. Ceci est lié à l’interprétation fréquentielle. En e¤et la relation entre H1 (z) et H0 (z) impose H1 (ej2 f ) = H0 (ej2 (f +1=2) ), autrement dit les réponses sont symétriques. Si H0 (z) est un passe-bas alors H1 (z) est un passe-haut. Avec le choix de …ltres QMF la relation de …ltrage devient: ^ (z) = 1 H02 (z) X 2 H12 (z) X (z) (2.142) Si l’on veut que x ^n = xn n0 , il faut que H02 (z) H12 (z) = 2z n0 . Le seul degré de liberté est H0 (z), et il n’y a malheureusement pas de solution avec H0 (z) et H1 (z) d’ordre plus grand que 1 qui satisfasse simultanément auxqdeux conditions QMF et RP. Une solution triviale est donne par H0 (z) = 12 (1 + z 1 ), qui n’a pas d’utilité pratique. On doit donc se contenter de satisfaire la condition QMF et d’approcher au mieux la condition RP. Reconstruction presque parfaite: Dans ce cas, seule la condition de non repliement est satisfaite. On se contente d’approcher la non distorsion d’amplitude: T (z) z D (2.143) RP/RP RP/RP RP/RP RP/RP 2.16. BANC DE FILTRES À 2 VOIES 79 Les relations QMF se traduisent sur les réponses impulsionnelles par: 8 n < h1 (n) = ( 1) h0 (n) f0 (n) = h0 (n) (2.144) : f1 (n) = ( 1)n h0 (n) Soit à écrire H0 (z) sous forme polyphase, H0 (z) = E0 (z 2 ) + z 1 E1 (z 2 ), avec e0 (m) = h0 (2m) et e1 (m) = h0 (2m + 1), il vient la structure …gure (2.62). Figure 2.62: Stucture polyphase d’un banc de 2 …ltres Phase linéaire Si l’on impose que H0 (z) soit un …ltre à phase linéaire alors h0 (N 1 n) = h0 (n). En fait le caractère passe-bas de H0 (z) ne permet de retenir que la solution h0 (N 1 n) = h0 (n), pour laquelle H0 ej2 f = e j (N0 1)f R (!), où R (!) est une fonction réelle. Dans ces conditions T ej2 f s’écrit: T ej2 1 = e 2 f j2 (N0 1)f H0 (ej2 f ) 2 ( 1)(N0 1) H0 (ej2 (f +1=2) ) 2 (2.145) Ceci suppose N pair, autrement N impair implique que le gain à la fréquence 41 est forcé à zéro par la condition QMF. D’où T ej2 f 1 = e 2 2 j2 (N0 1)f H0 (ej2 f ) + H0 (ej2 (f +1=2) ) 2 (2.146) et la condition de reconstruction parfaite devient: 2 H0 (ej2 f ) + H0 (ej2 (f +1=2) ) 2 =2 Une méthode de synthèse possible est la suivante: (2.147) 80 FILTRAGE MULTICADENCE Soit : H0 (z) = NX 0 1 n hn z , avec N0 pair n=0 L’objectif est d’obtenir : H02 (z) H02 ( z) = z h = [h0 h1 hN0 1 ]T h iT z 2(N0 1) z2N0 = 1z 1 h ( z) 2(N0 ^ z2N0 = 1 ( z) 1 1) g=h h D. En notant: iT Il vient: H02 (z) H02 ( z) = gT (z2N0 ^ z2N0 ) T =g ~ z2N0 Par construction : ~ z2N0 = 2 0z 1 0z réponse en fréquence s’exprime par: H02 (ej! ) où c (!) = 0e alors: j(D 1)! 0 30 z 2N0 +3 0 T , ej! = 2gT c (!) e H02 010 e pour z = ej! , la jD! j(D 2N0 +3)! 0 T . L’objectif devient 2gT c (!) = 1 Ceci peut être obtenu en minimisant la fonction : E= Z H02 (ej! ) H02 j! e e jD! 2 d! + Z 2 H0 (ej! ) d! !a 0 Le premier terme est la mesure de l’ondulation de reconstruction, le second est l’énergie dans la bande atténuée. D’après ce qui précède, E peut s’écrire: Z Z 2 2 H0 (ej! ) d! E= 2gT c (!) 1 d! + 0 !a E est une forme quadratique dépendant de h et g: E = 4gT Pg 4gT b + hT Qh + 2.16. BANC DE FILTRES À 2 VOIES 81 où: P = :diag f0; 1; 0; ; 1; 0g 2 !a 1 2 6 ! a 1 1 6 6 .. 6 . Q=6 1 6 4 N0 1 b = [0 0 0 N0 2 T N0 1 N0 2 .. . !a N0 3 0] 3 7 7 7 7, 7 7 5 k = 1 sin k! a k Le gradient de E par rapport à h est : rh E = 2 [(4JPH + P) h 2Jb], où J est le Jacobien, matrice de taille N0 (2N0 1) de g par rapport à h : J= @g @Hh = @h @h avec H matrice de Toeplitz de taille N0 (2N0 1), dont la première ligne est [h0 0 0] et la première colonne [h0 h1 hN0 1 0 0]T . De même, J est une matrice de Toeplitz dont la première ligne est 2 [h0 h1 hN0 1 0 0] T et la première colonne [2h0 0 0] . Dans la mesure où l’on ne considère que les …ltres à phase linéaire, h est symétrique et le retard de reconstruction D = N0 1. Le nombre de coe¢ cients à déterminer est N0 =2, et le gradient de E devient: rhs E = 2 [(4Js PHs + Qs ) hs 2Js b] où: hs = h0 h1 Js est une matrice N0 =2 Js = (2N0 hN0 =2 T 1 1) donnée par: @g = [(Jt + Jh ) ‡iplr ((Jt + Jh ) (:; 1 : N0 @hs 1))] avec Jt matrice de Toeplitz N0 =2 N0 dont première ligne est 2 h0 h1 hN0 =2 et la première colonne [2h0 0 0]T et Jh matrice de Hankel N0 =2 N0 dont la première colonne est le vecteur nul et la dernière ligne est 0 02h0 2h1 2hN0 =2 Hs est une matrice (2N0 1) N0 =2 donnée par: Hs = Hs 1 ‡ipud (Hs1 (1 : N0 avec Hs1 matrice de Toeplitz N0 [h0 0 0] et la première colonne h0 h1 1; :)) N0 =2 dont la première ligne est T hN0 =2 1 2hN0 =2 1 2h1 2h0 . 1 hN0 =2 1 1 . h1 h 0 82 FILTRAGE MULTICADENCE IN0 =2 . La solution cherJN0 =2 chée est obtenue en annulant le gradient rhs E = 0. Ce qui donne: Qs est de la forme Qs = KT QK, où K = hs = 2 (4Js PHs + Qs ) 1 Js b Cette expression suggère une solution itérative: 1. Concevoir un …ltre demi-bande initial à phase linéaire, de longueur N0 pair et utiliser les coe¢ cients hi (i = 0 N0 =2 1) pour fabriquer le vecteur initial noté h0 . 2. Calculer Js et Hs . 3. Evaluer hs = 2 (4Js PHs + Qs ) 1 Js b. 4. Faire une mise à jour : h0 = hs + (1 5. Si kh0 ) h0 . 0 < < 1. hs k2 < ", le …ltre est trouvé, sinon recommencer en 2. Phase non linéaire Dans certaine situation, il est souhaitable que le retard de reconstruction D soit court (i.e. D < N0 1), dans ces conditions les …ltres ne sont pas à phase linéaiire. La procédure itérative précédemment décrite peut être reprise en tenant compte de la non symétrie du …ltre initial. 1. Concevoir un …ltre demi-bande initial de longueur N0 pair, de retard de groupe D=2 et utiliser les coe¢ cients hi (i = 0 N0 1) pour fabriquer le vecteur initial noté h0 . 2. Calculer J et H. 3. Evaluer h = 2 (4JPH + Q) 1 Jb. 4. Faire une mise à jour : h0 = h + (1 5. Si kh0 ) h0 . 0 < < 1. hk2 < ", le …ltre est trouvé, sinon recommencer en 2. L’expérience montre que si le délai D N0 1, il y a apparition d’artefacts dans la bande de transition du …ltre obtenu. Une solution possible pour réduire ces artefacts est de contraindre la bande de transition par un terme additionnel dans la fonction de coût E. Ce terme peut prendre la forme suivante: ! Z21 2 H0 ej! e j!D=2 d! 1 !1 2.16. BANC DE FILTRES À 2 VOIES 83 où [! 1 ; ! 2 ] représente la bande de transition du …ltre. La forme de E devient: E = 4gT Pg 2 T 1d 4gT b + hT ( Q+ h+ + 1 (! 2 1 Q1 ) h !1) où Q1 = fqij g est une matrice symétrique de taille N0 qij = 1 ji jj [sin (ji !2 !1 jj ! 2 ) sin (ji d est un vecteur de taille N0 par: di = [sin ((D=2 i) ! 2 ) N0 avec: i=j jj ! 1 )] i 6= j 1 dont les composantes di sont données sin ((D=2 i) ! 1 )] = (D=2 i) La solution est alors : h = (4JPH + Q+ 1 Q1 ) 1 (2Jb + 1 d) qu’il su¢ t d’utiliser à l’étape 3 de l’algorithme itératif. 2.16.5 Banc orthogonal (CQF) Un banc de …ltres CQF est plus souvent appelé banc orthogonal. La condition de non repliement (2.138) étant satisfaite, on cherche une solution di¤érente de la contrainte QMF. Pour cela on se réfère à la notion de …ltre à puissance complémentaire. De tels …ltres véri…ent la propriété: ~ (z) H (z) + H ~ ( z) H ( z) = 1 H ~ (z) = H z 1 . où H P 0 1 n , en choisissant H (z) = Soit H0 (z) = N 1 n=0 h0 (n) z et pour N0 pair, la fonction de transfert (2.139) devient: T (z) = z (N0 1) 2 h i ~ 0 (z) H0 (z) + H ~ 0 ( z) H0 ( z) H (2.148) z (N0 1) H ~ 0( (2.149) H0 (z) étant à puissance complémentaire, on a bien un banc à reconstruction parfaite dé…ni par: H1 (z) = z (N0 1) ~ 0 ( z) H ~ 0 (z) H 1) ~ H1 (z) F0 (z) = z (N0 1) F1 (z) = z (N0 (2.150) z), 84 FILTRAGE MULTICADENCE En utilisant (2.115) et (2.150) on en déduit les relations d’orthogonalité: X 2 h0 (n) h0 (n 2k) = (k) n 2 X h0 (n) h1 (n 2k) = 0 h1 (n) h1 (n 2k) = (k) (2.151) n 2 X n Le terme de repliement est éliminé et les …ltres ne véri…ent pas la condition QMF, mais on les appelle CQF pour Conjugate Quadrature mirror Filters. Ceci provient de la construction de la solution. Pour synthétiser H0 (z), on remarque d’abord quepar construction, le ~ 0 (z) H0 (z) est un …ltre demi-bande à phase linéaire (à l’aide …ltre produit H de 2.147). Soit donc, G(z) la fonction de transfert d’un …ltre RIF demibande d’ordre 2(N0 1) à phase linéaire. La réponse en fréquence est: G(ej2 f ) = ej2 (N0 1)f G0 (2 f ) (2.152) Dans cette expression G0 (2 f ) n’est pas le module du gain, mais le gain du …ltre à phase nulle qui est une quantité réelle (prise en compte de saut de phase de ). Supposons N0 1 impair, la méthode optimale au sens de Chebyshev conduit à une réponse à ondulation constante d’amplitude 2 (…gure 2.63). Figure 2.63: Synthèse de …ltre pour la reconstruction parfaite Si on utilise la symétrie par rapport f = 41 , il vient: G(z) G( z) = cz (N0 1) (2.153) 2.16. BANC DE FILTRES À 2 VOIES 85 Soit alors G+ (z) = G(z) + z (N0 1) , le gain G0+ (2 f ) est toujours positif. En raison de l’ondulation constante G+ (z) possède des zéros doubles aux fréquences fk telles que G0 (2 fk ) = 0. Il existe donc une factorisation de G+ (z) en: G+ (z) = NY 0 1 (z zk ) z 1 zk = z (N0 1) k=1 NY 0 1 (z zk ) (1 En raison de la symétrie de la réponse on a: G+ (z)+( 1)(N0 z zzk ) k=1 1) G (2.154) z) = +( (N0 1) On a le choix des racines de G+ (z) pour fabriquer H0 (z), d’autre part en choisissant: H1 (z) = z (N0 1) H0 (z 1 ) (2.155) il vient T (z) = [H0 (z)H0 (z 1 )+H0 ( z)H0 ( z D’où ^ (z) = z (N0 1) X(z) X 1 )]z (N0 1) = z (N0 1) (2.156) Ce qui traduit la RP. On remarque que tous les …ltres sont de mêmes longueurs et par construction ne sont pas à phase linéaire. Les bancs de …ltres ainsi obtenus sont dits orthoganaux. Filtre demi-bande Le …ltre passe-bas demi bande idéal est dé…ni par : H0 ej2 f = 1 pour 0 jf j < 0:25 0 pour 0:25 jf j < 0:5 (2.157) Par la méthode de la fenêtre, on obtient aisément pour la version non causale de la réponse impulsionnelle: h0 = 0 hn = sin( n2 n (2.158) ) Soit: h2n = 0 ce qui est une caractéristique de tels …ltres et qui se généralise à tout gabarit passe-bas tel que la bande passante soit de même largeur que la bande atténuée et que le gain à la fréquence f = 0:25 soit de 0:5. Traduisons cela sur les caractéristiques d’un …ltre à phase linéaire de type 1 (N0 impair, réponse impulsionnelle symétrique). On rappelle que pour de tels …ltres, la réponse en fréquence est donnée par: H0 (ej! ) = e (N 1) j! 02 N0 1 2 X n=0 an cos (n!) (2.159) 86 FILTRAGE MULTICADENCE et an = 2h N0 1 n pour (n = 1; ; N02 1 ). 2 PM Notons G0 (!) = n=0 an cos (!) M = N02 1 le gain du …ltre à phase nulle. Soit ! 1 (resp. ! 2 ) la dernière fréquence passante (resp. la première fréquence atténuée), par raison de symétrie de la réponse en fréquence ! 1 + ! 2 = et l’on a les mêmes ondulations en bande passant et atténuée: où: a0 = hN0 1 =2 G0 (!) = 1 G0 ( !) (2.160) N0 N0 1 1 2 soit G0 (z)+G0 ( z) = 1 ou encore H0 (z)+( 1) 2 H0 ( z) = z . Si l’on substitue (2.159) dans (2.160), il vient a2n = 0; n 6= 0 et a0 = hM = 0:5. Il s’ensuit que la réponse impulsionnelle a tous ses échantillons d’indice impair nuls pour M impair et tous ceux d’indice pair nuls pour M pair (sauf hM ). Ainsi, si M est pair h0 = hN0 1 = 0, le …ltre n’est donc pas de longueur N0 mais de longueur N0 2 car on peut supprimer h0 et hN 1 qui sont nuls. Il en résulte que pour un …ltre demi bande N0 est de la forme: N0 = 4k + 3 =) M = 2k + 1 hn = 0 0:5 (2.161) n impair 6= M n pair (2.162) Si il est simple d’obtenir les coe¢ cients hn nuls à l’aide de la méthode de la fenêtre, il n’en est pas de même avec les autres méthodes. Pour atteindre ce but, il est intéressant de prendre en compte le fait que ces coe¢ cients sont nuls et ne chercher que les coe¢ cients non nuls. M P Soit donc un …ltre à phase linéaire V (z) = vn z n de longueur M + 1, n=0 M impair, et à coe¢ cients symétriques. C’est un …ltre de type 2. Nous savons alors que forcément V ej = 0. De plus: j! V (e ) = e j! M 2 ! cos 2 M +1 2 X1 b0n cos (n!) = e j! M 2 V0 (!) (2.163) n=0 Compte tenu de la forme de V0 (!) (terme en cos !2 ), sur l’intervalle [0; 2 ] la réponse est antisymétrique par rapport à (…g:2.64). Si maintenant on considère V z 2 , sa réponse en fréquence est V ej2! (…g:2.65), il su¢ t de rajouter une constante pour que l’on obtienne la réponse d’un demi bande. D’où: V z2 + z M H0 (z) = (2.164) 2 2.16.6 Banc biorthogonal Dans les cas précedents les 4 …ltres sont tous de même longueur et ne dépendent que de la synthèse de H0 (z). Si l’on reprend les conditions à respecter 2.16. BANC DE FILTRES À 2 VOIES 87 1.5 1 0.5 0 -0.5 -1 -1.5 0 1 2 3 4 5 6 7 Figure 2.64: V0 (!) (2.136) et compte tenu de la condition de non repliement (2.138), la représentation générale du banc de …ltre est de la forme: H0 (z) = h0 (0) ; h0 (1) ; h0 (2) , F1 (z) = H0 ( z) = h0 (0) ; h0 (1) ; h0 (2) H1 (z) = h1 (0) ; h1 (1) ; h1 (2) ; h1 (3) , F0 (z) = H1 ( z) = h1 (0) ; h1 (1) ; h1 (2) ; h1 (3) (2.165) 1 Reprenons l’expression de T (z) = 2 [H0 (z) F0 (z) + H1 (z) F1 (z)], si l’on pose P0 (z) = H0 (z) F0 (z), alors compte tenu des conditions de non repliement, le produit H1 (z) F1 (z) = P0 ( z). Il vient alors: T (z) = 1 [P0 (z) 2 P0 ( z)] (2.166) Ainsi la condition de reconstruction parfaite s’exprime sous la forme: P0 (z) P0 ( z) = 2z n0 (2.167) Soit P0 (z) = p0 + p1 z 1 + p2 z 2 + , alors P0 ( z) = p0 p1 z 1 + p2 z 2 et le résultat dé…ni par (2.167) n’est possible que si les coe¢ cients d’ indice impair sont tous nuls sauf pn0 , autrement dit P0 (z) = pn0 z n0 + PN 1 2n , avec n0 impair. n=0 p2n z La synthèse du banc de …ltre s’e¤ectue en deux étapes: 1. On synthétise P0 (z) qui satisfait à (2.167) 2. On factorise P0 (z) en H0 (z) et F0 (z). 88 FILTRAGE MULTICADENCE 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 0 1 2 3 4 5 6 7 Figure 2.65: V0 (2!) On en déduit ici les conditions de biorthogonalité, à comparer à (2.151): X 2 h0 (n) f0 (n 2k) = (k) n 2 X h0 (n) f1 (n 2k) = 0 h1 (n) f0 (n 2k) = 0 h1 (n) f1 (n 2k) = (k) (2.168) n 2 X n 2 X n Le choix de P0 (z) et de la factorisaton permet, entre autre, de retrouver le cas CQF (P0 (z) est demi-bande), mais il peut également conduire à d’autres types de …ltres, en particulier à phase linéaire. Dans ce cas les …ltres H1 (z) (ou F0 (z)) et H0 (z) ne sont liés que par le résultat de leur produit P0 (z). On résume dans le tableau suivant les solutions possibles pour des …ltres à phase linéaire, en fonction de la S(ymétrie) ou A(ntiymétrie), de la parité P(aire) ou I(mpaire), de plus il est possible de montrer que les longueurs des …ltres (N0 et N1 ) sont fortement liées, et que seules deux situations (type A et type B) sont ppossibles. Type A Type B N0 2L 2L + 1 N1 2L + 4K 2L + 4K + 1 H0 (z) et F0 (z) Sym. Sym. H1 (z) et F1 (z) AntiSym. Sym. Seuls deux cas sont intéressants, ils sont dé…nis par type A et type B: 2.16. BANC DE FILTRES À 2 VOIES 89 Type A: …ltres SAPP, avec N0 + N1 = 0 mod 4 et H0 (z) de type 2, H1 (z) de type 4. Type B: …ltres SSII, avec N0 + N1 = 0 mod 4 et H0 (z) et H1 (z) de type 1. Méthode de synthèse On donne ci-dessous une méthode permettant d’éxhiber un grand nombre de solutions. Les relations (2.138) conduisent à la relation entrée sortie: ^ (z) = 1 [H0 (z) F0 (z) X 2 H0 ( z) F0 ( z)] X (z) (2.169) La reconstruction parfaite impose: H0 (z) F0 (z) H0 ( z) F0 ( z) = 2z D (2.170) où D est le délai de reconstruction. En notant N0 (resp. N1 ) les longueurs des réponses impulsionnelles de H0 (z) (resp. H1 (z)), et en se plaçant dans le cas des …ltres SSPP, avec N0 + N1 = 0 mod 4, les …ltres H0 (z) et F0 (z) sont à coe¢ cients symétriques et de longueurs paires en raison de leur caractère passe-bas. Les …ltres étant 1 à phase linéaire, il est facile de véri…er que D = N0 +N 1. On supposera 2 de plus que N1 > N0 . Dans le domaine temporel la relation (2.170) devient: Hf = m où: h H = 2 b1 + bN1 B= 2 6 6 6 6 =6 6 6 6 4 f= h m= b1 b2 h1 h0 h3 h2 .. .. . . h N 0 1 hN 0 0 0 .. .. . . f0 f1 b2 + bN1 N0 +N1 2 h0 .. . 1 .. . 2 hN 0 .. . f N1 2 0 0 b N1 + b N1 +1 1 2R bN1 0 h1 .. . (2.171) 1 T 1 1 iT 2R hN0 .. . 2R N0 +N1 4 2 .. . N1 2 1 1 2 N1 2 0 0 .. . 2 3 7 7 7 7 7 0 7 7 7 5 .. . i 2R N0 +N1 2 1 N1 2 90 FILTRAGE MULTICADENCE hn , pour n = 0; 1; ; N0 1 est la réponse impulsionnelle de H0 (z) et f (n), pour n = 0; 1; ; N21 1 est la première moitié de la réponse impulsionnelle de F0 (z). H0 (z) est obtenue par une méthode conventionnelle (fenêtre ou Remez), les coe¢ cients de f sont obtenus en résolvant le sys1 tème d’équations donné par (2.171) qui comporte N0 +N équations pour N21 4 inconnues. Ce qui donne un nombre de degrés de liberté ld = N1 4 N0 . La solution générale de (2.171) est donnée par: f = Hy m+ I Hy H (2.172) où Hy est la pseudo-inverse (ou inverse au sens de Moore-Penrose) de H, et un vecteur colonne arbitraire. On remarquera que: Hy H H I =0 (2.173) Le second terme de (2.172) représente donc un vecteur du noyau de H. Ce qui signi…e que I Hy H projette un vecteur arbitraire sur le noyau de H. Considérons la décomposition en valeurs singulières de H: 2 6 H = U4 .. 3 0 .. 7 T . 5V 0 0 .. . 1 . 0 N0 +N1 4 L’équation (2.172) s’écrit aussi: (2.174) f =Q+V Avec: 2 6 6 6 6 6 Q = Hy m = V 6 6 6 6 4 h V = v N0 +N1 +1 4 (2.175) 3 1 1 .. 7 7 7 7 7 T 7U m 7 7 7 5 . 1 M +N 4 0 .. . 0 .. . 0 i v N1 ; 2 0 = 1 N1 N0 4 vi est la ieme colonne de la matrice V, et contient ld paramètres libres. En comparant (2.172) et (2.175) on remarque que les ld derniers vecteurs colonne de V constituent une base du noyau de H. Le problème de la synthèse de F0 (z) revient à trouver un tel le produit V conduise au minimum de la fonction de coût E: Z E= jF (!)j2 d! = (Q + V )T P (Q + V ) (2.176) !s où 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 91 ! s est le début de la bande coupée de F0 (z) F (!) = 2f T c (!) cos c (!) = cos N12 1 ! R P = 4 !s c (!) c (!)T d! 1 2! les coe¢ cients pij de la matrice P sont donnés par: 1 a1 sin ( 1 !) !s 1 sin ( 1 pij = 2 1 !) 1 2 sin ( 2 !) i=j i 6= j avec i; j = 1; 2; ; N21 , 1 = i + j N1 1, et 2 = i En imposant: r E = 0, le minimum est atteint pour opt = V T 1 PV V T j. PQ (2.177) Les coe¢ cients de F0 (z) sont donnés par: f =Q+V (2.178) opt La méthode présentée s’étend sans grande di¢ culté aux …ltres à phase minimale. Exemple: On donne ci-dessous un exemple de banc de …ltres biorthogonaux à phase linéaire obtenu par cette méthode. La …gure (2.66) donne la réponse en fréquence des …ltres H0 (z) et H1 (z) de longueur N0 = 22 et N1 = 34. 2.17 Exemples de bancs de …ltres à M voies 2.17.1 Par construction Il est assez simple de construire E (z) qui satisfasse (2.127), par exemple: E (z) = EJ (z) EJ 1 (z) E0 (2.179) IM 1 0 et les Ej (j = 0; 1; J)sont des matrices 0 z 1 constantes non singulières de taille (M M ). Dans ces conditions det E (z) = z J , et la solution causale R (z) est donnée par z J E 1 (z), soit: où: (z) = R (z) = E0 1 (z) E1 1 (z) où: (z) = z 1I M 1 0 0 . 1 EJ 1 (2.180) 92 FILTRAGE MULTICADENCE Banc biorthogonal 10 0 -10 -20 -30 -40 -50 -60 -70 0 0.05 0.1 0.15 0.2 0.25 0.3 No = 22 , N1 = 34 0.35 0.4 0.45 0.5 Figure 2.66: Banc biorthogonal. On obtient un banc de …ltres dont la partie analyse est donnée …gure (2.67). Si la seule contrainte imposée aux matrices Ej est la non singularité, on trouve une multitude de bancs de …ltres satisfaisant la reconstruction parfaite, mais dont l’information est mal répartie dans chacune des voies du banc (mauvaise séparation fréquentielle). Une possibilité est d’imposer à la matrice E (z) d’être paraunitaire. Pour cela donnons quelques propriétés. Figure 2.67: Exemple de banc de …ltres à M voies. 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 93 Système sans perte Une matrice de transfert causale E (z) est dite sans perte si: 1. chaque élément Ekm (z) est stable 2. E ej2 f est unitaire : Ey ej2 f E ej2 f = cI, 8f On montre que pour des fonctions de transfert rationnelles cela équivaut ~ à: E (z) E (z) = cI, 8z, on dit que E (z) est paraunitaire. Ainsi, un système sans perte est un système paraunitaire causal. Si E (z) est une matrice carrée représentant un système sans perte, alors ~ ~ (z) = cste). De plus E (z) est paraunitaire mais pas sans perte (sauf si E ~ si E (z) est stable, alors par construction E (z) est instable, les pôles des ~ (z) sont les inverses conjugués de ceux de E (z), donc sont éléments de E situés à l’extérieur du cercle unité. Pour cette raison, on ne s’intéressera qu’aux …ltres RIF, E (z) matrice polynomiale. Orthogonalité et puissance complémentaire ~ (z) E (z) = cI, implique que les colonnes de E (z) sont mutuelleLa propriété E ~ k (z) Em (z) = 0, si k 6= m. Comme E ~ k (z) Ek (z) = c, ment orthogonales: E chaque colonne dé…nit un ensemble de …ltres à puissance complémentaire. ~ (z) E (z) = E (z) E ~ (z), Si de plus la matrice E (z) est carrée, alors E l’orthogonalité et la puissance complémentaire sont aussi véri…ées pour les lignes. Propriétés 1. Si E (z) est paraunitaire de taille (r et det E (z) = z K . ~ (z) det E (z) = cr , r) alors det E 2. Si E (z) est paraunitaire de taille (r r) alors, (i) E z M , 8M entier, ~ (z) le sont aussi. (ii) ET (z) et (iii) E 3. Si E0 (z) et E1 (z) sont paraunitaires, E (z) = E0 (z) E1 (z) est paraunitaire. Banc de …ltres paraunitaire Si E (z), la matrice des composantes polyphases du banc d’analyse, est pa~ (z) E (z) = cI, et donc E 1 (z) = E ~ (z) =c. Il est raunitaire elle véri…e E alors possible de choisir la matrice des composantes polyphases du banc ~ (z), le coe¢ cient K assurant la de synthèse sous la forme R (z) = dz K E causalité. Ce choix assure la reconstruction parfaite, de plus les …ltres de synthèse sont les retournés des …ltres d’analyse: Fk (z) = dz K ~ k (z) H (2.181) 94 FILTRAGE MULTICADENCE On a une relation identique à celle des …ltres CQF (2.150). L’obtention des …ltres d’analyse Hk (z) peut être liée à la notion de …ltres M ieme de bande ou Nyquist(M). De tels …ltres sont des …ltres à phase linéaire tels que leur fonction de transfert possède une quelconque de ses composantes polyphases qui soit un retard pur: G (z) = k 1 X z m Em z M + cz k z Mk m=0 + M X1 z m Em z M (2.182) m=k+1 La réponse impulsionnelle possède alors la propriété: g (M n + k) = c, n = k 0, ailleurs (2.183) En fréquence on a: M X1 G zW l = 1 (2.184) l=0 Si l’on compare à la propriété des colonnes de H (z) d’être parauniataires: M X1 ~ k zW l Hk zW l = cste H (2.185) l=0 Alors Hk (z), résulte de la factorisation d’un …ltre M ieme de bande: ~ k (z) Hk (z) Gk (z) = H 2.17.2 (2.186) Banc de …ltres et TFD En reprenant le principe de la transformée de Fourier à court terme, l’idée ici est de réaliser le banc de …ltres par modulation du …ltre passe-bas initial. Les fonctions de transfert des …ltres d’analyse sont donc dé…nies par: k Hk (z) = H0 zWM Une réalisation élémentaire réside dans le choix H0 (z) = Un tel choix conduit à la matrice de composantes polyphases: E (z) = W (2.187) PM 1 m. m=0 z (2.188) Où W est la matrice de transformée de Fourier de taille (M M ). En choisissant R (z) = W, on obtient R (z) E (z) = WW = M I c’est à dire la condition de reconstruction parfaite. Le banc est dessiné …gure (2.68). La réponse en fréquence du banc d’analyse est représentée …gure (2.69) dans le cas M = 8. 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 95 Figure 2.68: Banc de …ltres et TFD. 30 25 20 15 10 5 0 -5 -10 50 100 150 200 250 300 350 400 450 500 Figure 2.69: Banc de …ltres TFD à 8 voies. On constate qu’il y a beaucoup de recouvrement entre les voies, ceci résulte du choix de H0 (z) qui n’est qu’une simple fenêtre rectangulaire pour laquelle toutes les composantes polyphases sont égales à l’unité. Pour améliorer la sélectivité on peut chercher un H0 (z) plus complexe. La matrice des composantes polyphases s’écrit alors: E (z) = W diag (E0 (z) ; E1 (z) ; ; EM 1 (z)) (2.189) En utilisant la décomposition polyphase de type 2 pour F0 (z) on obtient une expression du même type pour R (z), …nalement: R (z) E (z) = diag (R0 (z) E0 (z) ; R1 (z) E1 (z) ; ; RM 1 (z) EM 1 (z)) (2.190) 96 FILTRAGE MULTICADENCE La condition de reconstruction parfaite impose Rm (z) Em (z) = z K 8m. Si les …ltres Em (z) sont RIF, alors les …ltres Rm (z) = z K Em1 (z) sont RII. Leur stabilité impose que les Em (z) soient à phase minimale, or ceci est incompatible avec le fait que H0 (z) soit à phase linéaire car on montre qu’un …ltre à phase linéaire ne peut pas avoir toutes ses composantes polyphases à phase minimale. Pour ce problème il n’y a donc pas de solution pratique et dans tous les cas la sortie reconstruite nécessite une égalisation. Bien que cette approche ressemble à la notion de la TFCT (transformée de Fourier à court terme), il faut distinguer l’implantation en transformée par blocs avec recouvrement de la TFCT et celle de …ltrage (i.e. sans recouvrement) du banc de …ltres par TFD. 2.17.3 Banc de …ltres modulés L’idée de base est de mêler la notion de transformée en blocs avec celle de banc de …ltres en introduisant du recouvrement. Pour cela, il su¢ t que le nombre de voies d’entrées du banc d’analyse soit plus grand que le nombre de voies de sorties et inversement pour le banc de synthèse. on obtient donc un banc de …ltres de même nature que celui de la …gure (2.68) dans lequel on a L retard à l’entrée, un sous echantillonnage par M , M voies intermédiaires, et L retard à la sortie. Les matrices W et W sont à remplacer par une matrice de transformation T quelconque de taille (M L), satisfaisant à TTy = I a…n qu’il y ait reconstruction parfaite (…gure 2.70). Figure 2.70: Transformée avec recouvrement. Cette façon de procéder est très utilisée en codage. Les techniques de codage bloc par bloc sans recouvrement donnent lieu à un e¤et de bloc quasi inévitable que l’on peut réduire, voire supprimer en introduisant du recouvrement. Les premières transformations de ce type sont dites LOT (Lapped orthogonal transform) et correspondent au cas L = 2M . Le banc de …ltres 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 97 d’analyse correspondant est le vecteur h (z) dé…ni par: 2 6 h (z) = 6 4 3 H0 (z) H1 (z) HM 1 (z) 2 7 6 7 = T6 5 4 1 z z 1 (2M 1) 3 7 7 5 (2.191) T est la juxtaposition de deux matrices carrées T0 et T1 de taille (M M ), T ainsi h (z) = T0 + z M T1 1; z 1 ; ; z (M 1) . On en déduit la matrice de composantes polyphases E (z) = T0 + z 1 T1 , et nous savons qu’une codition de reconstruction parfaite est donnée par le fait qu’elle est parau~ (z) = dI, ce qui impose la relation fk (n) = hk (2M 1 n) nitaire E (z) E entre les réponses impulsionnelles des …ltres d’analyse et de synthèse. En terme de la matrice de transformation, cela conduit à: T0 Ty0 + T1 Ty1 = I T0 Ty1 (2.192) =0 Plusieurs approches ont montré que l’on pouvait étendre ce principe pour des longueurs L > 2M de la forme L = 2KM aboutissant à deux systèmes de banc de …ltres, l’un dit pseudo QMF ou à reconstruction presque parfaite, l’autre dit à reconstruction parfaite. Les deux étant réunis sous le nom de banc de …ltres modulés en cosinus. Dans le cas des …ltres pseudo QMF ~ (z) E (z) presque diagonale dont les éléments sont on obtient une matrice E presque constant. Pour avoir la reconstruction parfaite, il su¢ t de forcer a priori le caractère paraunitaire de E (z) dans la procédure de synthèse des …ltres. Filtres pseudo QMF Le banc de …ltres est obtenu par modulation d’un …ltre prototype, la différence avec le banc de …ltres de type TFD est double (i) on impose aux coe¢ cients des …ltres du banc d’être réels, (ii) tous les …ltres ont même largeur de bande (à la di¤érence de la …gure 2.69 où le premier et le dernier …ltre ont une largeur moitié). Le principe est de partir sur un banc de 2M …ltres modulés exponentiellement et de les combiner pour obtenir M …ltres à coe¢ cients réels. Soit P0 (z) le …ltre prototype à coe¢ cients réels et de fréquence de coupure (1=4M ), on k+0:5 en déduit 2M …ltres Qk (z) = P0 zW2M . Pour satisfaire (ii), la modulation a été décalée de 1=4M , tous les …ltres Qk (z) (k = 0; 1; ; 2M 1) ont même largeur de bandes 1=2M , et compte tenu de la construction: Q2M 1 k (z) = Qk; (z) (2.193) 98 FILTRAGE MULTICADENCE La propriété (2.193) permet de construire M …ltres à coe¢ cients réels en regroupant les Qk (z) par paires conjuguées. E¤ectuons cette construction en deux temps. D’abord: Uk (z) = ck Qk (z) jc j = 1, k = 0; 1; Uk; (z) = ck Q2M 1 k (z) k ;M 1 (2.194) Ensuite: Hk (z) = ak Uk (z) + ak Uk; (z) , jak j = 1, k = 0; 1; ;M 1 (2.195) La fonction de transfert globale du banc de …ltres est donnée par (2.116): M 1 M 1M 1 1 X 1 X X l l ^ X (z) = Hk (z) Fk (z) X (z)+ Hk zWM Fk (z) X zWM M M k=0 l=1 k=0 (2.196) Et la reconstruction parfaite est possible si le système est paraunitaire: ~ k (z) = z (N 1) Hk z 1 (2.197) Fk (z) = z (N 1) H Si le terme de repliement (le deuxième de (2.196)) est annulé, on obtient la fonction de transfert: M 1 M 1 1 X z (N 1) X (2.198) T (z) = Hk (z) Fk (z) = Hk (z) Hk z 1 M M k=0 k=0 La distorsion de phase est nulle, car T (z) est à phase linéaire: T ej2 f = e j (N 1)f M X1 M Hk ej2 f 2 (2.199) k=0 Il nous reste à déterminer les conditions d’annulation du terme de repliement. Pour cela on va restreindre le problème en imposant que le …ltre prototype P0 (z) soit à phase linéaire. Son caractère passe-bas impose qu’il soit symétrique (p0 (n) = p0 (N 1 n)). A l’aide de (2.194), il est facile de voir que Uk (z) et Uk; (z) auront la même phase linéaire que P0 (z), si l’on (k+0:5)N choisit ck = WM 2 . Les réponses en fréquences de Uk (z) et Uk; (z) sont les mêmes que celles de P0 (z), leur disposition est résumée …gure (2.71). La première approximation est de supposer qu’il n’y a recouvrement qu’entre deux bandes adjacentes, ce qui élimine un grand nombre de termes dans l’expression du repliement. Pour les termes restant, leur élimination implique a2k = a2k 1 , (k = 1; ; M 1). On en déduit: M T (z) t a20 + a02 U0 (z) U0; (z) + a2M + M X1 k=0 1 + aM2 1 UM 1 (z) UM 1; 2 Uk2 (z) + Uk; (z) (2.200) (z) 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES -k U (zW ) k M -(k+1) U (zW ) k M U (zW ) k M V k U k - kf kf kf 2M 2M 2M k V (zW ) M k V (zW ) M k 99 1 f M (k+1) V (zW ) M k U V k + k kf - kf f 2M 2M Figure 2.71: Disposition des U ej2 f . Avec jak j = 1, ak = jak 1 , si l’on rajoute a40 = a4M 1 = 1, on élimine les termes de repliement U0 (z) U0; (z) et UM 1 (z) UM 1; (z). Ce qui se traduit …nalement par: M 1 1 X 2 T (z) t Uk2 (z) + Uk; (z) M (2.201) k=0 ak = ej k = ( 1)k jak 1, k = ( 1)k 4 Finalement on obtient une écriture condensée des réponses impulsion- 100 FILTRAGE MULTICADENCE nelles hk (n) et fk (n): hk (n) = 2p0 (n) cos M fk (n) = 2p0 (n) cos M (k + 0:5) n (k + 0:5) n N 1 2 N + (2.202) k 1 k 2 On donne ci-dessous (…gure 2.72) un exemple de banc de …ltres modulés à 8 voies et le gain (…gure 2.73) (on remarquera l’axe des coordonnées): 20 0 -20 -40 -60 -80 -100 -120 -140 -160 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 Figure 2.72: Filtres modulés à 8 voies. Reconstruction parfaite La solution précédente est à reconstruction presque parfaite. L’approximation de la procédure d’annulation de repliement ne permettant pas d’obtenir la ~ (z) E (z). Ecrivons la forme de E (z). En diagonalité parfaite du produit E supposant N = 2KM , la forme polyphase de Hk (z) est: Hk (z) = 2KM X1 n=0 tkn z n G z 2M ,06k6M 1 (2.203) 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 101 1 1 1 1 1 1 1 1 1 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 Figure 2.73: Gain total T ej2 où tkn = 2 cos M N 1 2 (k + 0:5) n 2 6 6 h (z) = Tg(z) = T 6 4 z + k 0.4 f 0.5 . . Soit: 3 G0 z 2M z 1 G1 z 2M .. . (2M 1) G 0.45 2M 1 z 2M 7 7 7 5 (2.204) T est la matrice de modulation et g (z) le vecteur des composantes polyphases provenant du …ltre prototype P0 (z). h (z) = T g0 z 2M z M g1 z 2M On en déduit: E (z) = T g0 z 2 z M g1 z 2 e (z) (2.205) (2.206) En associant la matrice T aux notions de transformées en cosinus C et en sinus S discrètes, dé…nies par les coe¢ cients: r 2 cos (k + 0:5) (n + 0:5) (2.207) ckn = M M r 2 skn = sin (k + 0:5) (n + 0:5) M M 102 FILTRAGE MULTICADENCE Ces transformées ont les propriétés suivantes: CT = C, ST = S 2 1 0 .. . 6 6 C = SJ, S = CJ, = 6 4 0 0 1 0 .. .. . . 0 0 0 .. 3 0 0 .. . . ( 1)M 1 CT C = ST S = I 7 7 7 5 on obtient une partition de T en: T = [T0 T1 ] (2.208) où: T0 = T0 = p p M 0 (C M 1 p S) , T1 = (C + S) , T1 = p M 0 (C M 1 + S) , K pair (C (2.209) S) , K impair avec: f f 0 gkk 1 gkk = cos ( (k + 0:5)K) , f = sin ( (k + 0:5)K) , f 0 gkl =f 1 gkl =f 0 glk 1 glk =0 =0 On en déduit: TT0 T0 = 2M I ( 1)K J TT1 T1 = 2M I + ( 1)K J (2.210) TT0 T1 = 0 ~ (z) E (z) prend la forme: Compte-tenu de (2.206) et (2.210) le produit E ~ (z) E (z) = 2M g E ~0 z 2 g0 z 2 + g ~1 z 2 g1 z 2 K 2M ( 1) g ~0 z 2 Jg0 z 2 +g ~1 z 2 (2.211) Jg1 z 2 Puisque N = 2KM , chaque composante polyphase Gk (z) est de longueur K, et par construction, puisque P0 (z) est symétrique, on a: Gk (z) = z (K 1) ~ 2M G 1 k (z) (2.212) Ce qui dé…nit une relation entre g0 z 2 et g1 z 2 : g1 z 2 = z (K 1) ( 1)(K Remarque:Jdiag(1; 2; 3)J = diag(3; 2; 1). 1) J~ g0 z 2 J (2.213) 2.17. EXEMPLES DE BANCS DE FILTRES À M VOIES 103 L’expression (2.211) se simpli…e en: ~ (z) E (z) = 2M g E ~0 z 2 g0 z 2 + g ~1 z 2 g1 z 2 (2.214) On en déduit donc que le système sera paraunitaire (i.e. à reconstruction parfaite), si g ~0 z 2 g0 z 2 + g ~1 z 2 g1 z 2 = dI. Ce qui se traduit par le fait que les composantes polyphases de P0 (z) doivent être de puissance complémentaire: ~ k (z) Gk (z) + G ~ M +k (z) GM +k (z) = d, 0 6 k 6 M G 1 (2.215) En imposant cette contrainte au moment de la synthèse de P0 (z), on obtient un banc de …ltres peu di¤érent du banc pseudo QMF, qui possède la propriété de reconstruction parfaite, mais qui pour un ordre N identique donne une moindre atténuation pour les …ltres Hk (z). Dans une optique d’utilisation de codage en sous bande, les …ltres pseudo QMF sont apparamment su¢ sant et plus facile à synthétiser.