Traitement des Signaux Numériques
Traitement des Signaux Numériques
NOMBRE
UNITÉ SUJET
DE CLASSES
Introduction au DSP
Signaux et séquences temporels discrets 2
Stabilité et causalité 1
Page 1
Machine Translated by Google
UNITÉ 1
INTRODUCTION
SIGNAL : Un signal est défini comme toute quantité physique qui varie avec le temps, l'espace ou une autre variable indépendante.
SYSTÈME : Un système est défini comme un appareil physique qui effectue une opération sur un signal.
TRAITEMENT DU SIGNAL : Le système est caractérisé par le type d'opération effectuée sur
le signal. De telles opérations sont appelées traitement du signal. Ce type de traitement par
Avantages du DSP
1. Un système programmable numérique permet une flexibilité dans la reconfiguration du signal numérique
opérations de traitement en modifiant le programme. Dans le cas de l'analogique, une refonte du matériel est nécessaire.
4. Il est très difficile d'effectuer des opérations mathématiques précises sur des signaux sous forme analogique
mais ces opérations peuvent être mises en œuvre de manière routinière sur un ordinateur numérique à l'aide d'un logiciel.
Page 2
Machine Translated by Google
6. Petite taille.
7. Plusieurs filtres nécessitent plusieurs cartes en analogique, alors qu'en numérique, le même processeur DSP est
Inconvénients du DSP
1. Lorsque le signal analogique change très rapidement, il est difficile de convertir la forme numérique
4. Lorsque le signal est faible, à quelques dixièmes de millivolts près, nous ne pouvons pas amplifier le signal.
après sa numérisation.
5. Le matériel DSP est plus cher que les microprocesseurs et microprocesseurs à usage général.
contrôleurs.
Applications du DSP
1. Filtrage.
2. Synthèse vocale dans laquelle le bruit blanc (toutes les composantes de fréquence présentes au même
niveau) est filtré sur une base de fréquence sélective afin d'obtenir un signal audio.
3. Compression et expansion de la parole pour une utilisation dans les communications vocales radio.
4. Reconnaissance vocale.
8. communication de données MODEM à grande vitesse utilisant des systèmes de modulation d'impulsions tels que FSK,
QAM, etc. Le MODEM transmet à haute vitesse (1 200 à 19 200 bits par seconde) sur une bande
Page 3
Machine Translated by Google
SIGNAL À TEMPS DISCRET : Un signal qui a des valeurs à des instants discrets qui sont
Il en existe 4 types :
1. Représentation graphique
2. Représentation fonctionnelle
3. Représentation tabulaire
4. Représentation séquentielle
Représentation graphique
Considérons un signal temporel discret x(n) avec des valeurs x(1)=1,x(0)=2,x(1)=3,x(2)=4………….., cela
peut être représenté comme le montre la fig.
1 = −1
2 = 0,1
X(n)= 0,5 =2
1,5 =3
( 0 )
Page 4
Machine Translated by Google
Représentation séquentielle : Le signal est représenté sous forme de séquence dont l'origine temporelle est indiquée par le
symbole ↑.
δ(n)=1 n=0
0n≠0
Page 5
Machine Translated by Google
x(n)=un
Signal sinusoïdal :
Page 6
Machine Translated by Google
n
Signal exponentiel complexe : il est représenté par x(n)= a e j(gagné+Φ)
Signal d'énergie et de puissance : Pour un signal à temps discret x(n), l'énergie E est donnée par
Page 7
Machine Translated by Google
la plus petite valeur de n pour laquelle le signal est périodique est appelée période fondamentale.
Exemple : Montrer que la séquence exponentielle x(n)=ejw0n est périodique si w0/2π est rationnel
nombre.
Un signal temporel discret x(n) est dit même s'il satisfait à la condition
Page 8
Machine Translated by Google
Signaux causals et non causals : Un signal x(n) est dit causal si sa valeur est nulle pour n<0, sinon le signal est non
causal. Un signal nul pour tout n 0 est appelé signal anticausal.
Un système est dit invariant par décalage linéaire (temps) si les caractéristiques du système ne
changent pas avec le temps. En d'autres termes, si la séquence d'entrée est décalée de k échantillons, la séquence de
sortie générée est la séquence d'origine décalée de k échantillons.
Page 9
Machine Translated by Google
Pour tester si un système donné est invariant dans le temps, appliquez d'abord une séquence x(n) et trouvez y(n). Retardez
maintenant la séquence d’entrée de k échantillons et trouvez la séquence de sortie.
Remarque : Un système linéaire invariant dans le temps satisfait à la fois aux propriétés de linéarité et d'invariance temporelle.
Si l'entrée du système est une impulsion unitaire, c'estàdire x(n)=δ(n), alors la sortie du système est appelée
réponse impulsionnelle notée h(n).
h(n)=T[δ(n)]
pour un système LTI, si l'entrée et la réponse impulsionnelle sont connues, alors la sortie y(n) est donnée par
y(n)=∑
∞
=−∞ ( ) ( − )
l'équation cidessus représente la sortie est la somme de convolution de la séquence d'entrée x(n) et de la réponse
impulsionnelle h(n) représentée par
y(n)=x(n)*h(n)
Un système LTI est dit stable s’il produit une séquence de sortie limitée pour chaque séquence d’entrée
limitée. Si l’entrée est limitée et la sortie est illimitée, alors il s’agit d’un système instable. La condition nécessaire
et suffisante pour la stabilité est
∞
<∞
∑ ()
=−∞
Page 10
Machine Translated by Google
c'estàdire que la réponse impulsionnelle est stable si la réponse impulsionnelle est sommable.
Généralement, un système causal est un système dont la production dépend uniquement des valeurs
passées et présentes des entrées. La sortie d’un système LTI est donnée par
∞
y(n)=∑ =−∞ ()(−)
−1 ∞
= y(n)=∑ =−∞ ()(−) + y(n)=∑ (=0) ( − )
=…………….h(2)x(n+2)+h(1)x(n+1)+h(0)x(n)+h(1)x(n1) +…………..
Comme la sortie du système causal ne dépend pas des entrées futures, négligez donc les termes, alors y(n) se
réduit à
y(n)= h(0)x(n)+h(1)x(n1)+…………..
∞
=∑ ()
=0 (−)
Par conséquent, un système LTI est causal si et seulement si sa réponse impulsionnelle est nulle pour des valeurs négatives
de n.
Solution directe de l'équation de différence : la relation d'entrée et de sortie du système LTI est
régie par une équation de différence à coefficient constant.
Mathématiquement, la solution directe de l'équation cidessus peut être obtenue pour déterminer la
réponse du système.
y(n)=x(n)*h(n)
Page 11
Machine Translated by Google
c'estàdire Z[ (n)*h(n)]=X(Z)H(Z)
mais y(n)=x(n)*h(n)
c'estàdire que la réponse y(n) d'un système LTI est obtenue en prenant la transformée Z inverse de X(Z) et H(Z).
Inversement, si la fonction de transfert du système est connue, nous pouvons alors déterminer la réponse
impulsionnelle du système en prenant la transformée Z inverse de la fonction de transfert.
1.6 REPRÉSENTATION DANS LE DOMAINE FRÉQUENCIEL DES SIGNAUX ET DES SÉQUENCES TEMPS
DISCRETS.
La transformée de Fourier donne une représentation efficace des signaux et des systèmes dans le domaine fréquentiel.
La transformée de Fourier du signal à temps discret est donnée par
X(ω)=∑ ∞ e jwn
=−∞ ( )
w est la fréquence et elle varie continuellement de o à 2π. L'amplitude de X(w) donne le spectre de fréquences
de x(n).
Oui(w)=X(w)H(w)
Considérons une séquence périodique x(n) de période N et ceci est exprimé en série de Fourier discrète comme
−1 ej2πnk/N
x(n)= ∑ =0
les valeurs de Ck k=0,1,2,3…………….N1 sont appelées spectres discrets de x(n). Chaque Ck apparaît à la fréquence
wk=2πk/N.
Page 12
Machine Translated by Google
une condition suffisante pour l'existence de DTFT pour une séquence périodique x(n) est
• La transformée z est un outil mathématique puissant utilisé pour l'analyse des données temporelles linéaires.
systèmes discrets invariants dans le domaine fréquentiel.
• Les pôles et les zéros des systèmes LTI discrets sont tracés dans le plan Z complexe. Le
la stabilité des systèmes LTI peut également être déterminée à partir du tracé du pôle zéro.
Transformation en Z :
Page 13
Machine Translated by Google
x(n) ZX(Z)
du signal est fini ou convergent. Ainsi, ROC représente l'ensemble des valeurs de Z, pour lesquelles X(Z)
La transformée en Z est une « série infinie » (série entière infinie) qui ne converge pas pour toutes les valeurs de Z.
toujours.
2. Pour le signal du côté droit, le ROC sera à l'extérieur du cercle dans le plan Z.
3. Pour le signal du côté gauche, le ROC sera à l'intérieur du cercle dans le plan Z.
5. Pour le signal des deux côtés, ROC est un anneau dans le plan Z.
[Link] de X(Z)
[Link] de X(Z)
Page 14
Machine Translated by Google
Solution:
2
+(2) +
∞ −1 =1 z)n
= [1 + 2 ]+∑ (
2
+(2) +
∞ −1 =0 z)n 1]
=[1 + 2 ]+[ ∑ ( un
2 2
b
=[1 + 2
+(2) + ]+[1 + + ( ) + − 1]
= 1 + 1 1
1− 1−
= | |<1 + | |<1
Page 15
Machine Translated by Google
X(Z) =
−
+ −
1
=
−
+ −
Alors ème
Le système d'ordre ou les filtres numériques sont décrits par une forme générale d'équation de
différence de coefficient constant linéaire comme
∑ =0 y(nk) = ∑ =0 x(nk)
Fonction système H(Z) du système, représente H(Z) comme un rapport de deux polynômes B(Z)/A(Z),
A(Z) est le polynôme dénominateur qui détermine les pôles du signal d'entrée H(Z) x(n) a une
transformée z rationnelle X(Z).
Page 16
Machine Translated by Google
N(Z)
c'est à dire,.
X(Z) = Q(Z)
B(Z)N(Z)
Y(Z)= H(Z) X(Z) =
UNE(Z)Q(Z)
Supposons que le système contienne des pôles simples P1, P2, P3,… PN et que la transformée en Z du
signal d'entrée contienne des pôles q1, q2, q3,… qL, où Pk ≠ qm pour tout k = 1,2,…N et m= 1,2,…L.
Y(Z) = ∑ =1 1− −1 +∑ =1 1− −1
Lorsque les conditions initiales sont nulles, la réponse y(n) est appelée réponse à l'état zéro
Page 17
Machine Translated by Google
Une condition nécessaire et suffisante pour qu'un système linéaire invariant dans le temps soit BIBO
∞
stable est
∑ | =−∞
( )| ∞
À son tour, cette condition implique que H(Z) contient le plus le cercle unité dans son ROC
∞
Puisque H(Z) = ∑ h(n)
n=−∞ z −n
∞ −n
Prendre le module des deux côtés | ( ) | ≤ ∑ =−∞ |h(n)z |
= ∑∞ |h(n)| =−∞ z −n
Page 18
Machine Translated by Google
| ( ) | ≤ ∑ |h(n)| ∞ =−∞
Donc si le système est stable BIBO, le cercle unité est contraint dans le ROC de H(Z).
Cela peut également être énoncé comme « Un système linéaire invariant dans le temps est BIBO stable si et
seulement si le ROC de la fonction système inclut le cercle unité.
| |= , k=1,2,…M
Où (n) = ( ) n u(n)
∞
= ∑ |=0 ()n|
∞ n
= ∑ |( ) =0
|
Pour que le système cidessus soit fini, la grandeur de chaque terme doit être inférieure à l'unité, c'estàdire... chaque
|| 1, où est un pôle, c'estàdire,.. |Z| <[Link], , tous les pôles du système doivent se trouver à l’intérieur du cercle unitaire,
pour que le système soit stable.
Lorsque le polynôme dénominateur d'une fonction de transfert du système est grand et qui ne peut être
factorisé, il n'est pas possible de trouver les pôles du système. Par conséquent on ne peut pas décider si le
système est stable ou non. Dans de tels cas, la stabilité peut être déterminée en utilisant le test de stabilité Schur
Cohn.
1
H(Z) = 7 1 considérons uniquement le polynôme dénominateur, ici l'ordre des
1− −1− −2
4 2
7 −1 1 −2
le polynôme dénominateur est 2. Désignons donc le polynôme par D2(Z) = 1 − − .
4 2
1
Soit k2 = 2 | ,Si k2 est supérieur ou égal à 1, le système est instable.
2 et k2 = | 1
Si k2 est inférieur à 1, alors trouvez k1 en formant le polynôme inverse R2 (Z) à partir duquel D1(Z) .
Page 19
Machine Translated by Google
−1 7 −1 −2
Ici | k2 | < 1 Former donc le polynôme inverse R2(Z) = − −
2 4
Ici |k1| 1 , donc le système est instable. Si DN(Z) est donné à partir de RN(Z), utilisez l'équation récursive
Si quelqu'un de kN1,……. k1 est supérieur à 1, arrêtez de calculer les valeurs K restantes et décidez que le système est
instable.
2+ +1
Exemple : Trouver la stabilité de la fonction de transfert suivante H(Z) =
4+2 3+3 2+ 4 +6
2+ +1
Solution : étant donné H(Z) =
4+2 3+3 2+ 4 +6
= −2+ −3+ −4
1+2 −1+3 −2+ 4 −3+6 −4
La transformée de Fourier en temps discret et la transformée en Z sont utilisées pour obtenir une réponse en fréquence.
des systèmes à temps discrets. Si nous définissons z = ejωt , c'estàdire que... évaluons la transformation z autour du cercle unitaire,
∞ −
H(ejωt ) =H(ω) =∑ = −∞ ()
H(ω) est la réponse en fréquence du système, son module donne la réponse en amplitude et sa
la phase est la réponse de phase
Page 20
Machine Translated by Google
Page 21
Machine Translated by Google
1
Solution: Étant donné y(n) + y(n1)=x(n)x(n1)
4
Prendre la transformée de Fourier des deux côtés
1
Y(ejω ) + e
jω Y(ejω) =X(ejω) e jω X(ejω)
4
1
Y(ejω ) [1+ e jω ] = X(ejω) (1 e jω )
4
Y(ejω ) = 1− e− jω
H(ejω ) = 1
X(ejω) 1+ e− jω
4
1−cos +jsin 2
= 2
|H( )| = 1
1/2
1+ cos−j/4sin (1,062+0,5 )
4
péché −0,25péché
Réponse de phase : ( ) = tan−1 (1−cos ) tan−1 (1+0,25cos )
Ω 0
6 4 3
|H( )|
( )
Une fonction de transfert de filtre numérique peut être réalisée de différentes manières. Il existe deux types 0f
réalisation 1. Récursif 2. Non récursif
Pour une réalisation récursive, la sortie actuelle y(n) est fonction des sorties passées, des entrées
passées et présentes. Cette forme correspond à un filtre numérique à réponse impulsionnelle infinie (IIR). Pour un
Page 22
Machine Translated by Google
L'échantillon de sortie de courant de réalisation non récursive y(n) est fonction uniquement des entrées passées et présentes.
Cette forme correspond à un filtre numérique à réponse impulsionnelle finie (FIR).
Le filtre IIR peut être réalisé sous de nombreuses formes. Ils sont :
Page 23
Machine Translated by Google
Page 24
Machine Translated by Google
Page 25
Machine Translated by Google
Exemple:
Page 26
Machine Translated by Google
EXEMPLE:
Page 27
Machine Translated by Google
Page 28
Machine Translated by Google
EXEMPLE:
Page 29
Machine Translated by Google
Page 30
Machine Translated by Google
Page 31
Machine Translated by Google
UNITÉ 2
Considérons une séquence xp(n) avec une période de N échantillons de telle sorte que xp(n)=xp(n+lN). Puisque xp(n) est
une période périodique, elle peut être représentée comme une somme pondérée d'exponentielles complexes dont les
fréquences sont multiples entiers de la fréquence fondamentale.
[Link]ÉARITÉ DU DFS :
Page 32
Machine Translated by Google
[Link] DU TEMPS :
Page 33
Machine Translated by Google
[Link]ÉRENCE :
[Link] :
Page 34
Machine Translated by Google
La TFD d'une séquence de durée finie x(n) est obtenue en échantillonnant la transformée de Fourier X(ejw)
en N points également espacés sur l'intervalle 0≤w≤2π avec un espacement de 2π/N. La TFD est notée X( K),
et est donné par
Avec cette notation, l'équation d'analyse et de synthèse DFT est donnée par
Page 35
Machine Translated by Google
Les valeurs DFT X(K) peuvent être considérées comme des échantillons de X(ejw).
[Link]ÉARITÉ :
Page 36
Machine Translated by Google
[Link]É :
5. PROPRIÉTÉS DE SYMÉTRIE :
[Link] CIRCULAIRE :
Page 37
Machine Translated by Google
Si nous avons une séquence x(n) de longueur L et une séquence y(n) de longueur M, la séquence z(n)
obtenu par convolution linéaire a une longueur (L+M1). Cela ressort de la définition
Page 38
Machine Translated by Google
Page 39
Machine Translated by Google
Exemple :
Page 40
Machine Translated by Google
Page 41
Machine Translated by Google
Page 42
Machine Translated by Google
Z=ejw
Page 43
Machine Translated by Google
TFD :
FFT :
INTRODUCTION:
Dans cette section, nous présentons plusieurs méthodes pour calculer efficacement la DFT. Compte tenu de
l'importance de la DFT dans diverses applications de traitement du signal numérique, telles que le filtrage linéaire,
l'analyse de corrélation et l'analyse spectrale, son calcul efficace est un sujet qui a reçu une attention considérable de
la part de nombreux mathématiciens, ingénieurs et scientifiques appliqués.
À partir de ce point, nous modifions la notation selon laquelle X(k), au lieu de y(k) dans les sections précédentes,
représente les coefficients de Fourier de x(n).
Page 44
Machine Translated by Google
Fondamentalement, le problème de calcul de la DFT est de calculer la séquence {X(k)} de N nombres à valeurs
complexes étant donné une autre séquence de données {x(n)} de longueur N, selon la formule
En général, la séquence de données x(n) est également supposée avoir une valeur complexe. De même, l'IDFT
devient
Étant donné que DFT et IDFT impliquent fondamentalement le même type de calculs, notre discussion sur les algorithmes de calcul efficaces
pour la DFT s'applique également au calcul efficace de l'IDFT.
On observe que pour chaque valeur de k, le calcul direct de X(k) implique N multiplications complexes (4N multiplications
réelles) et N1 additions complexes (4N2 additions réelles).
2 2
Par conséquent, pour calculer toutes les N valeurs de la DFT, il faut N multiplications complexes et N
N ajouts complexes.
Le calcul direct de la DFT est fondamentalement inefficace, principalement parce qu'il n'exploite pas les propriétés de
symétrie et de périodicité du facteur de phase WN. En particulier, ces deux propriétés
sont :
Les algorithmes efficaces en termes de calcul décrits dans cette section, connus collectivement sous le nom
d'algorithmes de transformée de Fourier rapide (FFT), exploitent ces deux propriétés fondamentales du facteur de phase.
Considérons le calcul de la DFT du point N = 2v par l'approche diviser pour mieux régner.
Nous divisons la séquence de données à N points en deux séquences de données à N/2 points f1(n) et f2(n),
correspondant respectivement aux échantillons pairs et impairs de x(n), c'estàdire :
Page 45
Machine Translated by Google
Ainsi, f1(n) et f2(n) sont obtenus en décimant x(n) par un facteur 2, et par conséquent l'algorithme FFT résultant est appelé
algorithme de décimation dans le temps.
Maintenant, la DFT à N points peut être exprimée en termes de DFT des séquences décimées comme suit :
Mais WN 2 = WN/2. Avec cette substitution, l'équation peut être exprimée comme
où F1(k) et F2(k) sont respectivement les DFT N/2 points des séquences f1(m) et f2(m) .
Puisque F1(k) et F2(k) sont périodiques, de période N/2, on a F1(k+N/2) = F1(k) et F2(k+N/2)
k+N/2 = WN k
= F2(k). De plus, le facteur WN . L’équation peut donc s’exprimer sous la forme
On observe que le calcul direct de F1(k) nécessite (N/2)2 multiplications complexes. Il en va de même pour le calcul de F2(k).
De plus, N/2 multiplications complexes supplémentaires sont nécessaires pour calculer WN kF2(k). Donc le calcul de X(k)
nécessite 2(N/2)2 + N/2 = N
2
/2 + N/2 multiplications complexes. Cette première étape aboutit à une réduction du
2 tonne 2
nombre de multiplications à partir de N /2 + N/2, ce qui correspond à environ un facteur 2 pour N grand.
Page 46
Machine Translated by Google
En calculant les TFD N/4 points, nous obtiendrions les TFD N/2 points F1(k) et F2(k) à partir des relations
La décimation de la séquence de données peut être répétée encore et encore jusqu'à ce que les séquences
, cette décimation peut être effectuée
résultantes soient réduites à des séquences à un point. Pour N = 2v
v = log2N fois. Ainsi le nombre total de multiplications complexes est réduit à (N/2)log2N. Le
nombre d’additions complexes est Nlog2N.
Page 47
Machine Translated by Google
Page 48
Machine Translated by Google
Page 49
Machine Translated by Google
Exemple : Trouver la FFT d'une séquence donnée x(n)={1,2,3,4} en utilisant l'algorithme DITFFT ?
Page 50
Machine Translated by Google
Un autre algorithme FFT de base 2 important, appelé algorithme de décimation en fréquence, est obtenu en
utilisant l'approche diviser pour régner. Pour dériver l'algorithme, nous commençons par diviser la formule DFT
en deux sommations, dont l'une implique la somme des N/2 premiers points de données et la seconde somme
implique les N/2 derniers points de données. On obtient ainsi
2
où nous avons utilisé le fait que WN = WN/2
La procédure de calcul cidessus peut être répétée par décimation des DFT N/2 points X(2k) et X(2k+1).
L'ensemble du processus implique v = log2N étapes de décimation, où chaque étape implique N/2 papillons du
type représenté sur la figure TC.3.7. Par conséquent, le calcul de la DFT à N points via la FFT de décimation
en fréquence nécessite des multiplications complexes (N/2) log2N et des additions complexes Nlog2N , tout
comme dans l'algorithme de décimation en temps. À des fins d'illustration, l'algorithme de décimation en
fréquence en huit points est présenté sur la figure.
Page 51
Machine Translated by Google
Page 52
Machine Translated by Google
Exemple : Trouver la FFT d'une séquence donnée x(n)={1,2,3,4} en utilisant l'algorithme DIFFFT ?
Page 53
Machine Translated by Google
Unité 3
FILTRES RII
Fondamentalement, un filtre numérique est un système à temps discret linéaire et invariant. Les termes infinis
La réponse impulsionnelle (IIR) et la réponse impulsionnelle finie (FIR) sont utilisées pour distinguer les types de filtres. Le
Les filtres FIR sont de type non récursif, où l'échantillon de sortie actuel dépend du présent et
échantillons d’entrée précédents. Les IIR sont de type non récursif où la sortie actuelle dépend de
fréquences pour obtenir la forme requise du signal de sortie. La gamme de fréquences qui sont
Le passage à travers le filtre est appelé bande passante et les fréquences bloquées sont appelées stop.
Pour les spécifications données d'un filtre numérique, la dérivation de la fonction de transfert du filtre numérique
nécessite trois étapes :
1. Mappez les spécifications du filtre numérique souhaité dans un filtre analogique équivalent.
3. Transférez la fonction de transfert analogique vers la fonction de transfert de filtre numérique équivalente.
Fig (a) : Réponse en amplitude du LPF analogique Fig (b) : Réponse en amplitude du LPF numérique
Page 54
Machine Translated by Google
Où,
() ∑ =0
H(s) = =
() 1+∑ =1
Où H(s) est la transformée de Laplace de la réponse impulsionnelle de h(t) et N≥M doit être satisfaite.
Pour un filtre analogique stable, les pôles de H(s) se situent dans la moitié gauche du plan s.
Les deux types de filtres analogiques que nous concevons sont : 1. Filtre Butterworth 2. Filtre Chebyshev.
Page 55
Machine Translated by Google
Ωc = Fréquence de coupure
La réponse en amplitude diminue de façon monotone comme le montre la figure et la réponse maximale
est l'unité à Ω = 0, c'estàdire que, à mesure que N augmente, la réponse se rapproche des caractéristiques passebas idéales.
Nous pouvons obtenir la fonction carrée de magnitude du filtre Butterworth normalisé (fréquence de coupure de
1 rad/sec) comme
1
|H(jΩ)|2= N=1,2,3…
1+Ω2
Pour la fonction de transfert du filtre stable, remplacez Ω = s/j dans l'équation cidessus.
1
|H(jΩ)|2=|H(Ω)|2=H(s 2 )=H(jΩ)H(jΩ)= 1+( )
2
1 1
H(s)H(s)= 1+ =
(−1) 2 1+(− 2)
2
soit 1 + (− ) =0
2N
pour N impair, l'équation cidessus se réduit à s = 1=ej2πk
Page 56
Machine Translated by Google
maintenant les racines peuvent être trouvées sous la forme sk= ejπk/N k=1,2,3,………2N
2N = 1=ej(2k1)π
pour N pair, l'équation cidessus se réduit à s
Remarque : Les pôles qui se trouvent dans la moitié gauche du plan s peuvent être trouvés en utilisant la formule
(2 −1) + k=
sk=ejφk où φ 2 k=1,2,3………..N
2
ORDRE DE FILTRE
1
|H(jΩ)|2= Ω 2N
1+ε 2( ) Ωp
2 Ω
20 log |H(jΩ)|=10log110log[1 + ε ) 2N]
( Ωp
à la fréquence passebande, l'atténuation est égale à αp
Page 57
Machine Translated by Google
2
20 log |H(jΩp)|= αp= 10log[1 + ε ]
2
αp=10log[1 + ε ]
2
0,1 αp=log[1 + ε ]
En prenant l'antilog des deux côtés
ε = (100,1 α p1)1/2
2 Ωs
20 log |H(jΩ)|=10log110log[1 + ε ) 2N]
( Ωp
2
20 log |H(jΩp)|= αs= 10log[1 + ε Ωs ) 2N]
( Ωp
2
0,1αs=log[1 + ε Ωs ) 2N]
( Ωp
Ωs 100,1 αs−1
) 2N=
( Ωp 100,1 ap−1
N= √100,1
100,1ap−1
αs−1
Ωs
Ωp
Arrondissez N à l’entier supérieur suivant.
N≥ √100,1
100,1ap−1
αs−1
Ωs
Ωp
log( )
N≥ où λ 2=[100,1 αs − 1] ε 2 = [100,1 αp − 1]
Ωs Ωp
Ωp
Pour simplifier A= et k= Ωs le rapport de transition
logA
Par conséquent, l'ordre du filtre analogique passebas Butterworth N = log1
Page 58
Machine Translated by Google
La réponse en amplitude au carré du filtre Chebyshevfilter passebas analogique de type I du Nième ordre est
donné par:
= cosh(Ncosh1W),|W| > 1.
Le polynôme peut être dérivé via une relation de récurrence donnée par
La réponse en amplitude au carré du filtre passebas analogique de type II ou du filtre Chebyshev inversé de Nth
Page 59
Machine Translated by Google
Page 60
Machine Translated by Google
1. INVARIANCE D'IMPULSION
2. ÉTAPE INVARIANTE
3. TRANSFORMATION BILINÉAIRE
La méthode d'invariance d'impulsion est la méthode la plus simple utilisée pour concevoir des filtres IIR. Important
1. Dans la méthode de variance d'impulsion, les filtres analogiques sont convertis en filtre numérique simplement en remplaçant
réponse d'échantillon unitaire du filtre numérique par la version échantillonnée de la réponse impulsionnelle de l'analogique
filtre. Le signal échantillonné est obtenu en mettant t=nT donc h(n) = ha(nT) n=0,1,2. ………….
où h(n) est la réponse de l'échantillon unitaire du filtre numérique et T est l'intervalle d'échantillonnage.
2. Mais le principal inconvénient de cette méthode est qu'elle ne correspond pas à des calculs algébriques simples
Page 61
Machine Translated by Google
est plusieurs contre un. Les segments (2k1)Π/T ≤ Ω ≤ (2k+1) Π/T de l'axe jΩ sont tous cartographiés sur l'unité
3. Le repliement de fréquence est le deuxième inconvénient de cette méthode. En raison du repliement de fréquence, le
La réponse en fréquence du filtre numérique résultant ne sera pas identique à celle de l'analogique d'origine.
fréquence de réponse.
4. En raison de ces facteurs, son application est limitée à la conception de filtres basse fréquence comme LPF ou
Z est représenté par rejω sous forme polaire et la relation entre le plan Z et le plan S est donnée par
Z=eST où s= σ + j Ω.
Z=e (σ + j Ω) T
= e. eσ T j Ω T
1) Si σ = 0 alors r=1
Ainsi
Je suis (z)
Page 62
Machine Translated by Google
Avion S
=∑ −1
=1 1−
Page 63
Machine Translated by Google
Étapes pour concevoir un filtre IIR numérique à l'aide d'une technique invariante d'impulsion :
1. Pour les spécifications données, trouvez Ha(s), fonction de transfert d'un filtre analogique.
2. Sélectionnez le taux d'échantillonnage du filtre numérique.
3. Exprimez la fonction de transfert du filtre analogique comme la somme des filtres unipolaires.
Ha(s)= ∑ =1 −
4. Calculez la transformée z du filtre numérique en utilisant la formule.
H(z)= ∑ =1 1− −1
Exemple:
La réponse échelonnée y(t) est définie comme la sortie d'un système LTI en raison d'une entrée échelonnée unitaire
signal x(t)=u(t). Alors
1 1
X(s)= et Y(s)= X(s)H(s)= H(s).
Nous savons qu'un filtre numérique est équivalent à un filtre analogique dans le sens d'invariance dans le domaine temporel,
si une entrée équivalente produit des sorties équivalentes.
Par conséquent, l'entrée échantillonnée du filtre numérique est x(nT)=x(n)=u(n)Alors
1
X(z)= et y(n)=y(nT).
1−z−1
1
H(z)= Oui(z)/X(z)=(1z )Y(z).
Page 64
Machine Translated by Google
Page 65
Machine Translated by Google
Ω=
+
En simplifiant, on obtient
EFFET DE DÉFORMATION
Soit Ω et ω représentent les variables de fréquence dans le filtre analogique et le filtre numérique dérivé resp.
Ω= bronzage
Ω= =
ω=ΩT
Pour les basses fréquences, la relation entre ω et Ω est linéaire, le filtre numérique a donc la même réponse en
amplitude que le filtre analogique. Cependant, pour les hautes fréquences, la relation entre ω et Ω devient non linéaire
et une distorsion est introduite dans l'échelle de fréquence du filtre numérique par rapport à celle du filtre analogique.
C’est ce qu’on appelle l’effet de déformation.
Page 66
Machine Translated by Google
L'influence de l'effet de déformation sur la réponse en amplitude est illustrée dans la figure cidessous. Le filtre analogique
avec un certain nombre de bandes passantes centrées à intervalles réguliers. Le filtre numérique dérivé aura le même
nombre de bandes passantes. Mais les fréquences centrales et la bande passante de la bande passante des fréquences
plus élevées auront tendance à diminuer de manière disproportionnée.
L'influence de l'effet de déformation sur la réponse en phase est indiquée cidessous. En considérant un filtre analogique
avec une réponse en phase linéaire, la réponse en phase du filtre numérique dérivé sera non linéaire.
∟H(jΩ)
∟H(ejω)
ω Ω
ΩT
Page 67
Machine Translated by Google
Prédéformation
L'effet de prédéformation peut être éliminé en prédéformant le filtre analogique. Ceci peut être fait
en trouvant des fréquences analogiques de prédéformation à l'aide de la formule
Ω= bronzage
Et Ωs= bronzage
TECHNIQUE:
1. À partir des spécifications données, trouvez les fréquences analogiques de prédéformation à l'aide de la formule
Ω= bronzage .
2. À l'aide des fréquences analogiques, recherchez les H(s) du filtre analogique.
3. Sélectionnez le taux d'échantillonnage du filtre numérique, appelezle T sec/sample.
2 1− −1
4. Remplacez z = dans la fonction de transfert.
1+ −1
TRANSFORMATIONS SPECTRALES :
DANS LE DOMAINE ANALOGIQUE : Un filtre passebas analogique peut être converti en un filtre passehaut analogique,
Band Stop, Band Pass ou un autre filtre numérique passebas comme indiqué cidessous
Passebas à passebas :
s
Ω
Passebas à passehaut :
Ω
s
+Ω Ω
s
(Ω −Ω )
(Ω −Ω )
s
+Ω Ω
Page 68
Machine Translated by Google
Un filtre passebas numérique peut être converti en un filtre passehaut numérique, un coupebande, un passebande.
ou un autre filtre numérique passebas comme indiqué cidessous
Passebas à passebas : −
1
−
Z −
−
[( − ')/ ]
Où α =
[( + ')/ ]
ω
p = Fréquence de bande passante du filtre passebas
ω p' = Fréquence de bande passante du nouveau filtre
Passebas à passehaut :
1
Z [ −+ +− ]
[( + ')/ ]
Où α = − ′−
[( )/ ]
ω
p = Fréquence de bande passante du filtre passebas
Page 69
Machine Translated by Google
PROBLÈMES
1.
Page 70
Machine Translated by Google
Page 71
Machine Translated by Google
2.
Solution:
Page 72
Machine Translated by Google
UNITÉ 4
FILTRES EN SAPIN
4.1 INTRODUCTION
Les filtres FIR peuvent être facilement conçus pour avoir une phase parfaitement linéaire. Ces filtres peuvent être réalisés
de manière récursive et non récursive. Il existe une plus grande flexibilité pour contrôler la forme de leur réponse en Magnitude. Les
erreurs dues au bruit d'arrondi sont moins graves dans les filtres FIR, principalement parce que le feedback n'est pas utilisé.
1. Le filtre FIR fournit toujours une réponse en phase linéaire. Ceci précise que les signaux dans le passage
la bande ne subira aucune dispersion. Par conséquent, lorsque l'utilisateur ne souhaite aucune distorsion de phase, alors FIR
les filtres sont préférables à l’IIR. La distorsion de phase dégrade toujours les performances du système. Dans
diverses applications telles que le traitement de la parole, la transmission de données sur des filtres FIR longue distance
sont plus préférables en raison de cette caractéristique.
2. Les filtres FIR sont plus stables que les filtres IIR en raison de leur nature sans retour.
3. Quantification Le bruit peut être rendu négligeable dans les filtres FIR. En raison de cette coupure brutale
Les filtres FIR peuvent être facilement conçus.
4. L'inconvénient des filtres FIR est qu'ils nécessitent un ordre plus élevé pour une réponse d'amplitude similaire aux filtres IIR.
Le système n'est stable que si le système produit une sortie limitée pour chaque entrée limitée. Il s’agit d’une définition de stabilité
pour n’importe quel système.
Ici h(n)={b0, b1, b2, } du filtre FIR sont stables. Ainsi y(n) est borné si l’entrée x(n) est
Page 73
Machine Translated by Google
délimité. Cela signifie que le système FIR produit une sortie limitée pour chaque entrée limitée. Les
systèmes FIR sont donc toujours stables.
1. La réponse de l'échantillon unitaire des filtres FIR est symétrique si elle satisfait à la condition suivante.
h(n)= h(M1n) n=0,1,2…………….M1 2. La réponse
de l'échantillon unitaire des filtres FIR est antisymétrique si elle satisfait à la condition suivante h(n) = h(M1n)
n=0,1,2…………….M1
Les différentes méthodes utilisées pour la conception du FIR Filer sont les
suivantes 1. Méthode de la
série de Fourier 2. Méthode
de fenêtrage 3.
Méthode DFT 4. Méthode d'échantillonnage de fréquence. (Méthode IFT)
PHÉNOMÈNE GIBBS :
Considérons la réponse en fréquence LPF idéale, comme indiqué sur la figure 1, avec un
1. Dans la méthode des séries de Fourier, les limites de l'indice de sommation sont de ∞ à ∞. Mais le filtre doit avoir des
termes finis. Par conséquent, la limite de l'indice de sommation passe de Q à Q où Q est un entier fini. Mais ce type de
troncature peut entraîner une mauvaise convergence des séries. Troncature brutale de l'infini
Page 74
Machine Translated by Google
la série équivaut à multiplier une série infinie par une séquence rectangulaire. c'estàdire qu'au point de discontinuité,
une certaine oscillation peut être observée dans la série résultante.
2. Prenons l'exemple d'un LPF ayant une réponse en fréquence souhaitée Hd (ω), comme le montre la figure.
Les oscillations ou sonneries ont lieu près du bord de bande du filtre.
3. Cette oscillation ou sonnerie est générée à cause des lobes secondaires dans la réponse en fréquence
W(ω) de la fonction fenêtre. Ce comportement oscillatoire est appelé « phénomène de Gibbs ».
Le fenêtrage est la méthode la plus rapide pour concevoir un filtre FIR. Une fonction de fenêtrage simplement
tronque la réponse impulsionnelle idéale pour obtenir une approximation FIR causale qui est non causale et
infiniment long. Des fonctions de fenêtre plus fluides offrent un rejet hors bande plus élevé dans la réponse du filtre.
Cependant, cette douceur se fait au prix de transitions de bande d'arrêt plus larges. Diverses méthodes de
fenêtrage tentent de minimiser la largeur du lobe principal (pic) de la réponse en fréquence. De plus, il tente de
minimiser les lobes secondaires (ondulations) de la réponse en fréquence.
Fenêtre rectangulaire : Rectangulaire Il s'agit de la méthode de fenêtrage la plus élémentaire. Il ne nécessite aucune
opération car ses valeurs sont 1 ou 0. Il crée une discontinuité abrupte qui se traduit par des atténuations brusques
mais de grandes ondulations.
Page 75
Machine Translated by Google
Fenêtre triangulaire : la simplicité de calcul de cette fenêtre, une simple convolution de deux fenêtres rectangulaires
et les lobes latéraux inférieurs en font une alternative viable à la fenêtre rectangulaire.
Fenêtre Kaiser : Cette méthode de fenêtrage est conçue pour générer un pic central net. Ses lobes latéraux sont
réduits et la bande de transition est également étroite. Ainsi couramment utilisé dans la conception de filtres FIR.
Page 76
Machine Translated by Google
Fenêtre de Hamming : Cette méthode de fenêtrage génère un pic central modérément net. Sa capacité à générer
une réponse plate au maximum le rend pratique pour le filtrage du traitement de la parole.
Fenêtre de Hanning : Cette méthode de fenêtrage génère une conception de filtre plate maximale.
Page 77
Machine Translated by Google
Les filtres peuvent être conçus à partir de son tracé du pôle zéro. Deux contraintes suivantes doivent être
imposées lors de la conception des filtres.
1. Tous les poteaux doivent être placés à l'intérieur du cercle de l'unité pour que le filtre soit stable. Cependant, les
zéros peuvent être placés n'importe où dans le plan z. Les filtres FIR sont tous des filtres nuls et sont donc toujours
stables. Les filtres IIR ne sont stables que lorsque tous les pôles du filtre sont à l’intérieur du cercle unitaire.
2. Tous les pôles et zéros complexes apparaissent dans des paires conjuguées complexes pour que les coefficients du
filtre soient réels.
Page 78
Machine Translated by Google
Dans la conception des filtres passebas, les pôles doivent être placés près du cercle unité aux points correspondant
aux basses fréquences (près de ω=0) et les zéros doivent être placés près ou sur le cercle unité aux points correspondant
aux hautes fréquences (près de ω=Π). ). L’inverse est vrai pour les filtres passehaut.
Page 79
Machine Translated by Google
Page 80
Machine Translated by Google
Page 81
Machine Translated by Google
Page 82
Machine Translated by Google
Page 83
Machine Translated by Google
Page 84
Machine Translated by Google
PROBLÈMES
solution:
Page 85
Machine Translated by Google
Page 86
Machine Translated by Google
Page 87
Machine Translated by Google
Page 88
Machine Translated by Google
UNITÉ 5
TRAITEMENT DU SIGNAL MULTIRATE
INTRODUCTION:
Multirate signifie « taux d'échantillonnage multiples ». Un système DSP multidébit utilise plusieurs
taux d'échantillonnage au sein du système. Chaque fois qu'un signal à un débit doit être utilisé par un système qui
s'attend à un taux différent, le taux doit être augmenté ou diminué, et un certain traitement est nécessaire pour
faisle. Par conséquent, "Multirate DSP" fait réellement référence à l'art ou à la science de la modification de l'échantillonnage.
La raison la plus immédiate est lorsque vous devez transmettre des données entre deux systèmes qui
utiliser des taux d’échantillonnage incompatibles. Par exemple, les systèmes audio professionnels utilisent une fréquence de 48 kHz, mais
les lecteurs de CD grand public utilisent 44,1 kHz ; lorsque les professionnels de l'audio transfèrent leur musique enregistrée vers
CD, ils doivent effectuer une conversion de débit. Mais la raison la plus courante est que le DSP multidébit peut
augmente considérablement l'efficacité du traitement (même de plusieurs ordres de grandeur !), ce qui réduit le DSP
coût du système. Cela rend le sujet du DSP multidébit vital pour tous les praticiens professionnels du DSP.
3. Rééchantillonnage : combiner la décimation et l'interpolation afin de modifier le taux d'échantillonnage par une valeur fractionnaire
qui peut être exprimée sous forme de rapport. Par exemple, pour rééchantillonner d'un facteur de 1,5, il vous suffit d'interpoler
d'un facteur de 3 puis de décimer d'un facteur de 2 (pour modifier le taux d'échantillonnage d'un facteur de 3/2 = 1,5.)
APPLICATIONS:
2. Utilisé pour modifier le débit d'un signal. Lorsque deux appareils fonctionnant à des rythmes différents doivent être
4. Dans le traitement de la parole pour réduire l'espace de stockage ou le taux de transmission des données vocales.
5. Les bancs de filtres et les transformations en ondelettes dépendent des méthodes multitaux.
Page 89
Machine Translated by Google
SOUSÉCHANTILLONNAGE :
Le processus de réduction d'un taux d'échantillonnage d'un facteur entier est appelé down
échantillonnage d'une séquence de données. Nous appelons également le souséchantillonnage « décimation ». Vers le bas
échantillonnons une séquence de données x(n) par un facteur entier de M, nous utilisons la notation suivante :
y(m) = x(mM)
séquence x(n) pour chaque M échantillons (en supprimant M – 1 échantillons pour chaque M échantillons). En tant que
exemple, si la séquence originale avec une période d'échantillonnage T = 0,1 seconde (taux d'échantillonnage = 10
y(m):8 8 4 –5 –6 …,
avec la période d'échantillonnage résultante T = 3 × 0,1 = 0,3 seconde (le taux d'échantillonnage est désormais de 3,33 échantillons par
seconde).
D'après le théorème d'échantillonnage de Nyquist, il est connu qu'un crénelage peut se produire dans l'échantillon souséchantillonné.
signal en raison du taux d’échantillonnage réduit. Après souséchantillonnage d'un facteur M, le nouvel échantillonnage
fsM/2 = fs/(2M).
Page 90
Machine Translated by Google
Cela nous indique qu'après un souséchantillonnage d'un facteur M, la nouvelle fréquence de repliement sera
nouvelle fréquence de repliement, f > fs/(2M), un bruit de crénelage sera introduit dans les données souséchantillonnées.
Pour surmonter ce problème, il est nécessaire que le signal original x(n) soit traité par un passebas.
filtrer H(z) avant le souséchantillonnage, qui doit avoir un bord de fréquence d'arrêt à fs/(2M) (Hz). Le
Le bord de fréquence d'arrêt normalisé correspondant est ensuite converti pour être
De cette façon, avant le souséchantillonnage, nous pouvons garantir que la fréquence maximale du signal filtré
de telle sorte qu'aucun bruit de repliement ne soit introduit après un souséchantillonnage. Un schéma fonctionnel général
de la décimation est donné sur la figure, où la sortie filtrée en termes de transformée z peut être écrite
comme
W(z) = H(z)X(z),
où X(z) est la transformée en z de la séquence à décimer, x(n), et H(z) est la fonction de transfert du filtre passebas. Après
filtrage antialiasing, le signal souséchantillonné y(m) prend sa valeur à partir de la sortie du filtre comme suit :
y(m) = w(mM).
Le processus de réduction du taux d'échantillonnage d'un facteur 3 est illustré dans la figure Le correspondant
les tracés spectraux pour x (n), w (n) et y (m) en général sont présentés dans la figure
Page 91
Machine Translated by Google
c'estàdire si nous laissons M1 échantillons entre les échantillons de x(n) pour générer y(m).
Page 92
Machine Translated by Google
SURÉCHANTILLONNEUR :
L'augmentation d'un taux d'échantillonnage est un processus de suréchantillonnage d'un facteur entier de L. Ce processus est
y(m) = x(m/L)
où n = 0, 1, 2,… , x(n) est la séquence à suréchantillonner par un facteur de L, et y(m) est la séquence
séquence échantillonnée. A titre d'exemple, supposons que la séquence de données soit donnée comme suit :
x(n) : 8 8 4 –5 –6 …
Après avoir échantillonné la séquence de données x(n) d'un facteur 3 (en ajoutant L– 1 zéros pour chaque échantillon),
w(m): 8 0 0 8 0 0 4 0 0 –5 0 0 –6 0 0 …
L'étape suivante consiste à lisser la séquence de données échantillonnées via un filtre d'interpolation. Le processus
Page 93
Machine Translated by Google
période de T, la fréquence de Nyquist est donnée par fmax = fs/2. Après suréchantillonnage d'un facteur L, le
La nouvelle période d'échantillonnage devient T/L, donc la nouvelle fréquence d'échantillonnage est modifiée pour être
Cela indique qu'après suréchantillonnage, les répliques spectrales initialement centrées sur fs, 2fs, … sont
inclus dans la gamme de fréquences allant de 0 Hz à la nouvelle limite de Nyquist Lfs=2 Hz, comme indiqué dans
Chiffre. Pour supprimer ces répliques spectrales incluses, un filtre d'interpolation avec une fréquence d'arrêt
le bord de fs=2 en Hz doit être attaché, et le bord de fréquence d'arrêt normalisé est donné par
Page 94
Machine Translated by Google
Après filtrage via le filtre d'interpolation, nous obtiendrons le spectre souhaité pour y(n), comme indiqué
dans la figure 5.2.b. Notez que puisque l'interpolation consiste à supprimer les images haute fréquence qui sont
aliasé par l'opération de suréchantillonnage, il s'agit essentiellement d'un filtre passebas antialiasing.
En décimation et interpolation, la conversion du taux d'échantillonnage est réalisée par un facteur entier. Quand
la conversion du taux d'échantillonnage nécessite un facteur non entier, nous devons effectuer le taux d'échantillonnage
Page 95
Machine Translated by Google
peut donc être remplacé par un simple filtre passebas avec fréquence de coupure,
Wc = min[π/I, π/D]
Il est important de noter que, afin de préserver les caractéristiques spectrales de x(n), le
l'interpolation doit être effectuée en premier et la décimation doit être effectuée ensuite
Exemple : Montrez que le suréchantillonneur et le souséchantillonneur sont des systèmes à variantes temporelles.
y(n) = x(n/L)
y( n, k) = x(n/L k)
y(nk) = x[(nk)/L]
y(n ,k ) ≠ y(nk)
Oui(n) = x(nM)
y(n,k) = x(nMk)
y(nk) = x(M(nk))
y(n ,k ) ≠ y(nk)
Page 96
Machine Translated by Google
Dans le traitement du signal numérique, les nombres à virgule fixe de (B +1) bits sont généralement représentés par deux.
fractions signées complémentaires au format bo bib2 …… bB
où bo est le bit de signe et la plage de numéros est —1 <X <1. L'avantage de cette représentation est que le produit de deux
nombres compris entre — 1 et 1 est un autre nombre compris dans la même plage. Les nombres à virgule flottante sont
représentés par
où s est le bit de signe, mis la mantisse et cis la caractéristique ou l'exposant. Pour rendre la représentation d'un nombre
unique, la mantisse est normalisée de sorte que 0,5 <m <1.
La plupart des processeurs à virgule flottante utilisent désormais le format à virgule flottante 32 bits de la norme IEEE 754
pour stocker les nombres. Selon cette norme, l'exposant est stocké sous forme d'entier non signé où
p = c +126
où s est le bit de signe, fis une fraction non signée de 23 b dans la plage 0 < f < 0,5 et p est un entier non signé de 8 b dans la
plage 0 < p < 255. Le nombre total de bits est 1 + 23 + 8 = 32. Par exemple, au format IEEE 3/4 s'écrit (1)0 (0,5 + 0,25)2°
donc s =0, p =126 et f =0,25 . La valeur X =0 est un cas unique et est représentée par tous les bits nuls (c'estàdire s = 0, f =0
et p =0).
Bien que le bit de mantisse de poids 21 ne soit pas réellement stocké, il existe donc la mantisse a 24 b plus un bit de signe.
En arithmétique à virgule fixe, une multiplication double le nombre de bits significatifs. Par exemple, le produit des deux
nombres 5b 0,0011 et 0,1001 est le nombre 10b 00,000 110 11. Le bit supplémentaire à gauche du point décimal peut être
ignoré sans introduire d'erreur. Cependant, le
Page 97
Machine Translated by Google
Les quatre bits les moins significatifs des bits restants doivent finalement être éliminés par une certaine forme de
quantification afin que le résultat puisse être stocké dans 5b pour être utilisé dans d'autres calculs. Dans l'exemple ci
dessus, cela donne 0,0010 (quantification par arrondi) ou 0,0001 (quantification par troncature).
Lorsqu'un calcul de somme de produits est effectué, la quantification peut être effectuée soit après chaque
multiplication, soit après que tous les produits ont été additionnés avec une précision de double longueur.
Nous examinerons trois types de quantification en virgule fixe : l'arrondi, la troncature et la troncature d'amplitude. Si
X est une valeur exacte, alors la valeur arrondie sera notée Qr(X), la valeur tronquée Qt(X) et la valeur tronquée
d'amplitude Qmt(X). Si la valeur quantifiée a Bbits à droite de la virgule décimale , la taille du pas de quantification est
Puisque l'arrondi sélectionne la valeur quantifiée la plus proche de la valeur non quantifiée, il donne une valeur qui
n'est jamais éloignée de plus de ± A /2 de la valeur exacte. Si l’on note l’erreur d’arrondi par
La troncature supprime simplement les bits de poids faible, donnant une valeur quantifiée qui est toujours inférieure
ou égale à la valeur exacte.
La troncature de la magnitude choisit la valeur quantifiée la plus proche qui a une magnitude inférieure ou égale à la
valeur exacte, donc
L'erreur résultant de la quantification peut être modélisée comme une variable aléatoire uniformément répartie sur la
plage d'erreur appropriée. Par conséquent, les calculs avec erreur d’arrondi peuvent être considérés comme des
calculs sans erreur qui ont été corrompus par un bruit blanc additif. La moyenne de ce bruit pour l'arrondi est
Page 98
Machine Translated by Google
où E{}représente l'opération consistant à prendre la valeur attendue d'une variable aléatoire. De même, la variance du bruit
pour l’arrondi est
Avec l'arithmétique à virgule flottante, il est nécessaire de quantifier après les multiplications et les additions. La quantification
par addition se produit parce que, avant l'addition, la mantisse du plus petit nombre de la somme est décalée vers la droite
jusqu'à ce que l'exposant des deux nombres soit le même. En général, cela donne une mantisse somme trop longue et doit donc
être quantifiée. Nous supposerons que la quantification en arithmétique à virgule flottante est effectuée par arrondi. En raison de
l’exposant dans l’arithmétique à virgule flottante, c’est l’erreur relative qui est importante. L'erreur relative est définie comme
Pour déterminer le bruit d'arrondi à la sortie d'un filtre numérique, nous supposerons que le bruit dû à une quantification est
stationnaire, blanc et non corrélé avec l'entrée, la sortie et l'interne du filtre.
Page 99
Machine Translated by Google
variables. Cette hypothèse est bonne si l'entrée du filtre change d'un échantillon à l'autre d'une manière
suffisamment complexe. Elle n'est pas valable pour les entrées nulles ou constantes pour lesquelles les effets
d'arrondi sont analysés dans une perspective de cycle limite.
Pour satisfaire l'hypothèse d'une entrée suffisamment complexe, le bruit d'arrondi dans les filtres numériques est
souvent calculé pour le cas d'un signal d'entrée de filtre à bruit blanc de moyenne nulle x(n) de variance a1 . Cela
simplifie le calcul du bruit d'arrondi de sortie car les valeurs attendues de la forme E{x(n)x(n — k)}sont nulles pour k
=0 et donnent a2 lorsque k =0. Cette approche d'analyse s'est avérée donner des estimations du bruit d'arrondi de
sortie qui sont proches du bruit réellement observé pour d'autres signaux d'entrée.
Une autre hypothèse qui sera faite lors du calcul du bruit d'arrondi est que le produit de deux erreurs de quantification
est nul. Pour justifier cette hypothèse, considérons le cas d'un processeur 16b à virgule fixe. Dans ce cas, une erreur
de quantification est de l'ordre de 2 à 15, tandis que le produit de deux erreurs de quantification est de l'ordre de 2 à
30, ce qui est négligeable en comparaison.
Si un système linéaire avec réponse impulsionnelle g(n) est excité par un bruit blanc de moyenne mx et de variance
a2 , la sortie est un bruit de moyenne
Et la variance
Par conséquent, si g(n) est la réponse impulsionnelle à partir du point où un arrondi a lieu jusqu'à la sortie du filtre, la
contribution de cet arrondi à la variance (valeur quadratique moyenne) de l'arrondi de sortie
le bruit est donné par a2 remplacé par la variance de l'arrondi. S'il existe plusieurs sources d'erreur d'arrondi dans le
filtre, on suppose que les erreurs ne sont pas corrélées, de sorte que la variance du bruit de sortie est simplement la
somme des contributions de chaque source.
Page 100
Machine Translated by Google
Un cycle limite, parfois appelé cycle limite d'arrondi multiplicateur, est une oscillation de faible niveau qui peut exister dans
un filtre par ailleurs stable en raison de la nonlinéarité associée.
avec arrondi (ou troncature) des calculs de filtres internes. Les cycles limites nécessitent une récursivité
pour exister et ne se produisent pas dans les filtres FIR non récursifs. A titre d'exemple de cycle limite, considérons le filtre
du second ordre réalisé par
où Qr{} représente la quantification par arrondi. Il s'agit d'un filtre stable avec des pôles à 0,4375 ± j0,6585. Considérons
l'implémentation de ce filtre avec 4b (3b et un bit de signe) arithmétique à virgule fixe en complément à deux, conditions
initiales nulles (y(—1) = y(—2) = 0) et une séquence d'entrée x (n) =|S(n), où S(n)est l'impulsion unitaire ou l'échantillon
unitaire. La séquence suivante est obtenue.
Notez que même si l'entrée est nulle, sauf pour le premier échantillon, la sortie oscille avec une amplitude de 1/8 et une
période de 6. Les cycles limites sont principalement concernés par les filtres récursifs à virgule fixe.
Tant que les filtres à virgule flottante sont réalisés en tant que connexion en parallèle ou en cascade de sousfiltres du
premier et du deuxième ordre, les cycles limites ne poseront généralement pas de problème puisque les cycles limites ne
sont pratiquement pas observables dans les systèmes du premier et du deuxième ordre implémentés avec 32 Arithmétique
à virgule flottante en bits
Il a. été démontré que de tels systèmes doivent avoir une marge de sécurité extrêmement faible.
Page 101
Machine Translated by Google
stabilité pour que les cycles limites existent à autre chose que les niveaux de sousversement, qui ont une amplitude
inférieure à . Il existe au moins trois façons de gérer les cycles limites lorsque l'arithmétique à virgule fixe est utilisée.
La première consiste à déterminer une limite sur l’amplitude limite maximale du cycle, exprimée sous la forme d’un
nombre entier d’étapes de quantification. Il est alors possible de choisir une longueur de mot
qui rend l'amplitude du cycle limite suffisamment faible. Alternativement, les cycles limites peuvent être évités en
arrondissant les calculs de manière aléatoire vers le haut ou vers le bas. Cependant, cette approche est compliquée à
mettre en œuvre. La troisième approche consiste à choisir correctement la structure de réalisation du filtre, puis à
quantifier les calculs du filtre en utilisant la troncature d'amplitude. Cette approche présente l'inconvénient de produire
davantage de bruit d'arrondi que la troncature ou l'arrondi.
Avec l'arithmétique à virgule fixe, il est possible que les calculs de filtre débordent. Cela se produit lorsque deux nombres
du même signe s’additionnent pour donner une valeur dont la magnitude est supérieure à un. Puisque les nombres dont
la magnitude est supérieure à un ne sont pas représentables, le résultat déborde. Par exemple, les nombres
complémentaires à deux 0,101 (5/8) et 0,100 (4/8) s'additionnent pour donner 1,001 qui est la représentation du
complément à deux de 7/8.
La caractéristique de débordement de l'arithmétique du complément à deux peut être représentée par R{} où
Une oscillation de débordement, parfois également appelée cycle limite de débordement d'additionneur, est une
oscillation de haut niveau qui peut exister dans un filtre à virgule fixe par ailleurs stable en raison de la nonlinéarité brute
associée au débordement des calculs de filtre interne. Comme les cycles limites, les oscillations de débordement
nécessitent une récursion pour exister et ne se produisent pas dans les filtres FIR non récursifs.
Les oscillations de débordement ne se produisent pas non plus avec l'arithmétique à virgule flottante en raison de la
quasiimpossibilité de débordement.
Quantification:
Le nombre total de bits dans x est réduit en utilisant deux méthodes, à savoir la troncature et l'arrondi.
Ceuxci sont connus sous le nom de processus de quantification.
Les signaux quantifiés sont stockés dans un registre de bits ab mais pour les valeurs les plus proches, le même
équivalent numérique peut être représenté. C'est ce qu'on appelle l'erreur de quantification d'entrée.
La multiplication du numéro de bit ab avec un autre numéro de bit b donne un nombre de bits 2b mais il doit être stocké
dans le registre de bits ab. C'est ce qu'on appelle l'erreur de quantification du produit.
Page 102
Machine Translated by Google
Le mappage analogiquenumérique des signaux dû à la quantification du coefficient analogique entraîne une erreur due au
fait que les pôles stables marqués au bord de l'axe jΩ peuvent être marqués comme pôles instables dans le domaine
numérique.
Si l'entrée est mise à zéro, la sortie doit être mise à zéro, mais une erreur se produit en raison de l'effet de quantification
selon lequel le système oscille à une certaine bande de valeurs.
Une erreur de débordement se produit également du fait que la somme de deux nombres peut entraîner un débordement.
Pour éviter les erreurs de débordement, l'arithmétique de saturation est utilisée.
Bande morte :
La plage de fréquences entre lesquelles le système oscille est appelée bande morte du filtre. Il peut avoir une valeur positive
fixe ou osciller entre une valeur positive et négative.
Les entrées du sommateur doivent d'abord être mises à l'échelle avant l'exécution de l'opération d'ajout afin de détecter toute
possibilité de débordement après l'ajout. Le facteur d'échelle s0 est multiplié par les entrées pour éviter tout débordement.
Page 103