32
2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLE ANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE 2006-2007 SPE 4 Dr. Rodolphe WEBER

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

Embed Size (px)

Citation preview

Page 1: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1

Polytech'Orléans

Filière ESI

MODULE FILTRAGE COMPRESSIONFASCICULE DE COURS

FILTRAGE NUMÉRIQUE

ANNÉE 2006-2007SPE 4Dr. Rodolphe WEBER

Page 2: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 2

PLAN :- La quantification :

- application au convertisseur analogique numérique- application aux filtres numériques en virgule fixe

-les filtres récursifs- Quantification des coefficients- Quantification des opérateurs- Optimisation d’une structure

-les filtres non récursifs- autres implantations possibles

Page 3: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 3

Les effets d'une représentation en virgule fixe dans les filtres numériques

Ils ont pour origine 3 sources différentes :- Quantification du signal à filtrer par le convertisseur AD :

dégradation du RSB, non-linéarités

- Quantification des coefficients du filtre déformation de la réponse spectrale, voire divergence

- Limitation de la dynamique de calcul dégradation du RSB ,risque de saturation, non-linéarités

Introduction

Page 4: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 4

La quantification « idéale » round(x) : Q xq(t)=x(t)+e(t)x(t)

modélisation en bruit d’une quantification idéale

Puissance de l’erreur (bruit) ?Répartition en fréquence de cette erreur (bruit) ?

Cas du CAN :

Quantification du signal à filtrer par le convertisseur AD

Page 5: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 5

La quantification « idéale »: Puissance de l’erreur (bruit)Can

b bitsxq(t)=x(t)+e(t)x(t)

Quel est le rapport signal sur bruit (erreur) en sortie de la quantification ou du can ?

Puissance du signal => x2=

Puissance de l’erreur => e2=

-100 -80 -60 -40 -20 0

0

20

40

60

80

100

-20log

RSB=10log(x2/e

2) (dB)

b=16

810

1214 42

65.8

86

(dB)

2

22

310log 2 6,02 4,77 20logbx

s

RSB dB bx

Attention, vrai si pas de saturation et nombre de niveaux suffisant (cf.matlab ech_ideal.m)

Pour bruit gaussienxs

-xs

x

=xs/x

q

(10 bits)

Quantification du signal à filtrer par le convertisseur AD

Le cas du signal gaussien

Page 6: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 6

La quantification « idéale »: Puissance de l’erreur (bruit)Le cas du signal sinusoïdal

Que devient l’expression du RSB, pour un sinus pleine échelle ?

!

Phase aléatoire (10 bits) Période non commensurable (10 bits) Période commensurable (10 bits)

xq, rsb=61.863457 dB

=xs/x= RSB=

Quantification du signal à filtrer par le convertisseur AD

Page 7: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 7

La quantification « idéale »: Répartition fréquentielle de l’erreur

Distorsion d'intermodulation

Un convertisseur n'est pas linéaire : Vs=G0+G1.Ve+G2Ve2+…GnVen

=0 si linéaire

si on injecte des sinus de fréquences f1 et f2 , d'amplitude a on obtient toutes les combinaisons du type m.f1n.f2

• ordre 2 : 2f1, 2f2, f1+f2, f2-f1

• ordre 3 : 3 f1, 3f2, 2f2-f1,2f1-f2,2f2+f1,2f1+f2

Le convertisseur même idéal n’est pas linéaire !

Quantification du signal à filtrer par le convertisseur AD

Page 8: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 8

signal analogique

BufferSample and Hold Encoder

• bruit• distorsion• bande passante

• bruit• distorsion• bande passante• jitter

• bruit de quantif.• non-linéarité différentielle• non-linéarité intégrale

Amplitude analogique Amplitude numérique

Temps continu Temps discret

Les défauts d’un convertisseur analogique numérique

Sources de bruit : en vert-Bruit système < 2MHz-Jitter < 3 Ghz-Comparator ambiguity >3Ghz

Sources de non-linéarités : en bleu

Bande passante : important pour leSous-échantillonnage

Quantification du signal à filtrer par le convertisseur AD

Page 9: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 9

Sources de bruit : -Bruit système < 2MHz -Jitter < 3 Ghz-Comparator ambiguity >3Ghz

2

22

310log 2 6,02 1.73 20logbx

s

RSB dB bx

Effective number of bits : SINAD=1.73+6.02 ENOB

Les défauts d’un convertisseur analogique numérique

Test des paramètres dynamiques d'un ADC

•Signal to noise ratio : SNR= Pr/Pb•Total harmonic distorsion :

•Signal to noise distorsion : SINAD=Pr/(Pb+THD)•Effective numbers of bits : SINAD=1.73+6.02 ENOB•Spurious- free dynamique range (SDFR)

1ième harmonique

i

THD P

Attention, très dépendant de la fréquence du signal utilisé pour le test

Mesurés pour un sinus pleine échelle

Quantification du signal à filtrer par le convertisseur AD

Can b bits

xq(t)=x(t)+e(t)+eb(t)+enl(t)x(t)

non-linéarités

Page 10: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 10

Aperture Uncertainty (jitter)

Quantification du signal à filtrer par le convertisseur AD

Pour que EA<1/2 LSB

Page 11: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 11

Offset Error Gain Error

Les différents types d'erreurs statiques

après ajustement de l'Offset ErrorRajoute une composante continue Change le gain

Quantification du signal à filtrer par le convertisseur AD

Page 12: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 12

Differential linearity ErrorDNL error

Possibilité de code manquants si DNL > 1LSBDépend uniquement du processus d’encodageGénère des nonlinéarités indépendamment de l’amplitude

Quantification du signal à filtrer par le convertisseur AD

Absolute Accuracy Error

Elle inclut toutes les erreurs précédentes. Elle vaut au minimum ½ LSB. Génère des non-linéarités

Les différents types d'erreurs statiques

Page 13: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 13

Test des paramètres dynamiques d'un ADC

Quantification du signal à filtrer par le convertisseur AD

Puissance raie: Pr

Puissance bruit : Pb

Attention,À la normalisation

Ex. matlab

1 2

2 0

1( ) ( ) ( )E DSP f DSP W f d

w

2 2( )w w n

générateur CAN Spectre de puissance

Attention au choix de la fréquence de testAttention à la calibration des mesures entre bruit et sinus et choix d’une fenêtre d’apodisation

Page 14: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 14

Quantification des coefficients du filtre

Im(z)

Re(z)O

O

O

X

X

fp

0

fz

0.5

0.25fm

M

,1

,1

( )

N

z ii

c D

p ii

MH f K

M

Rappel : la réponse fréquentielle est directement liée à la position des pôles et des zéros.

Démonstration avec le programme Filtre

Les pôles influencent essentiellement la bande passante et les zéros la bande atténuée.

Page 15: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 15

Quantification des coefficients du filtre

La quantification des coefficients modifie les dits coefficients :

La position des pôles et des zéros est modifiée( La réponse fréquentielle est modifiée)

1 20 1 2

1 21 21

a a .z a .zT(z) A

b .z b .z

Page 16: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 16

Quantification des coefficients du filtre

Une même réponse fréquentielle peut être implantée sous différentes structures :

structure directe structure parallèle structure cascade

,0 ,1

,1

1

Ni

d d ii

Ni

d ii

a a .zK

b .z

10, 1,

1 21 1, 2,

.

1 . .

Qi i

i i i

h h zK

b z b z

1 2

0, 1, 2,

1 21 1, 2,1

Qi i i

i i i

a a .z a .zK

b .z b .z

,1

,1

( )( ) .

( )

N

o iiN

p ii

z zH z K

z z

Schema:

Page 17: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 17

Quantification des coefficients du filtre

Ces structures n'ont pas la même sensibilité à une variation de leur coefficients leur réponse fréquentielle est plus ou moins sensible à une variation des coefficients.

La structure cascade est la moins sensible. sensibilité du dénominateur (pôles) > sensibilité du numérateur (zéros)

Illustration avec Episip

Page 18: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 18

Quantification des coefficients du filtre

Les différentes structures cascades :

donner les équations pour l'implantation.

Page 19: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 19

Gestion de la dynamique

•Problématique de la gestion de dynamique

Cas RIF :

Cas RII :

Si on supprime des bits de poids fort => risque de dépassement

Si on supprime des bits de poids faible => rajout de bruit de quantification

Problème !

Page 20: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 20

Comment tronquer ? : •Représentation d’un nombre en virgule fixe

b bits

f bits

Q(b,f)

Gestion de la dynamique

Page 21: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 21

Il y a 2 sources potentielles de dépassement :- Les additionneurs : en complément à 2, dépassement temporaire possible dans une suite de sommations si le résultat final tient dans la dynamique

-(ex : sur 4 bits calculer -4-7+6 puis -4+7+6)

- les multiplieurs : -Les sorties :en complément à 2, dépassement temporaire possible dans une suite de sommations si le résultat final tient dans la dynamique(ex : sur 4 bits calculer 3x3-6x2 puis 3x3+6x2)

Gestion de la dynamique

Mise en place de facteurs d’échelle pour garantir que le résultat final tient dans la dynamique

Page 22: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 22

Sur les structures suivantes, identifiez les points de dépassement

Gestion de la dynamique

Page 23: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 23

x(n) F y(n)

Comment choisir , pour que si |x|<M, alors |y|<M ?

1 )Si x(n) est un bruit blanc de puissance P=2:

10f

DSP

21

2

0

( )P DSP f df

<M

t

10f

DSP

2

12 22 2

20

( )filtréP F f df F

t

2F

t

A<M

10f

DSP

fo

A2/2

t

A.|F(fo)|<A.max(|F(f)|)=A||F||∞

10f

DSP

fo

A2/2.|F(fo)|2

|F(f)|

10 f

max(|F(f)|)

2

1

F

1

F

2 )Si x(n) est un sinus d’amplitude A:

F

1

12

0

1( )

2

ppi

pF F e d

Gestion de la dynamique

Page 24: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 24

Exemple théorique de la structure 1D

Gestion de la dynamique

Page 25: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 25

Calcul du bruit en sortie

x

tron

catu

re

xq x + eq

2

22

2

212

12 2

m

m

n

q n

A

2q

2 Puissance du bruit de quantificationq

Localiser les sources de bruit :

Avantage/inconvénient des 2 solutions ?

Page 26: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 26

Calcul du bruit en sortie

démonstration avec filtre.exe

Influence du facteur d’échelle sur le rapport signal sur bruit

Rapport signal sur bruit sans et avec k1 ?

Apparier les pôles et les zéros

Augmenter la taille des registres (LSB)

Page 27: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 27

Comment dimensionner les registres internes ?

Calcul du bruit en sortie

Puissance bruit de troncature

filtré

Puissance bruit du CAN filtré

?

Page 28: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 28

Calcul du bruit en sortie

bruit F Bruit filtré

Si le bruit a une puissance 2q

Quelle est la puissance du bruit filtré ?

Page 29: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 29

Calcul du bruit en sortie

CAN

Q

Q Q

Q

Q

Quelle doit être la taille des registres internes pour que le bruit de sortie dû CAN soit égal au bruit de sortie dû à la troncature des multiplieurs ?

Page 30: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 30

Calcul du bruit en sortie

Page 31: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 31

Calcul du bruit en sortie

Résumé des paramètres modifiant le bruit en sortie :- le type de structure- le type de quantification- le choix de la norme- l'appariement des pôles et des zéros- l'ordre des cellules

démonstration episip

Page 32: 2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 1 Polytech'Orléans Filière ESI MODULE FILTRAGE COMPRESSION FASCICULE DE COURS FILTRAGE NUMÉRIQUE ANNÉE

2006-2007 FILTRAGE - R.WEBER - POLYTECH'ORLEANS 32

Cas des RIF

-2 structures possibles- même sensibilité sur les coefficients- compromis bruit/ressources/vitesses