DSP - Conception assistée par ordinateur

Les filtres FIR peuvent être utiles pour la conception assistée par ordinateur des filtres. Prenons un exemple et voyons comment cela fonctionne. Ci-dessous est une figure du filtre souhaité.

Lors de la conception par ordinateur, nous divisons l'ensemble des graphiques continus en valeurs discrètes. Dans certaines limites, nous le divisons en un nombre de 64, 256 ou 512 (et ainsi de suite) de parties ayant des grandeurs discrètes.

Dans l'exemple ci-dessus, nous avons pris des limites entre -π et + π. Nous l'avons divisé en 256 parties. Les points peuvent être représentés par H (0), H (1),… jusqu'à H (256). Ici, nous appliquons l'algorithme IDFT et cela nous donnera des caractéristiques de phase linéaire.

Parfois, nous pouvons être intéressés par un ordre particulier de filtre. Disons que nous voulons réaliser ce qui précède la conception donnée à 9 e filtre d'ordre. Donc, nous prenons les valeurs de filtre comme h0, h1, h2… .h9. Mathématiquement, il peut être montré comme ci-dessous

$$ H (e ^ {j \ omega}) = h_0 + h_1e ^ {- j \ omega} + h_2e ^ {- 2j \ omega} + ..... + h_9e ^ {- 9j \ omega} $$

Là où il y a un grand nombre de luxations, on prend le maximum de points.

Par exemple, dans la figure ci-dessus, il y a une baisse soudaine de la pente entre les points B et C.Ainsi, nous essayons de prendre des valeurs plus discrètes à ce point, mais il y a une pente constante entre les points C et D. moins de nombre de valeurs discrètes.

Pour concevoir le filtre ci-dessus, nous suivons le processus de minimisation comme suit;

$ H (e ^ {j \ omega1}) = h_0 + h_1e ^ {- j \ omega1} + h_2e ^ {- 2j \ omega1} + ..... + h_9e ^ {- 9j \ omega1} $

$ H (e ^ {j \ omega2}) = h_0 + h_1e ^ {- j \ omega2} + h_2e ^ {- 2j \ omega2} + ..... + h_9e ^ {- 9j \ omega2} $

De même,

$ (e ^ {j \ omega1000}) = h_0 + h_1eH ^ {- j \ omega1000} h_2e ^ {- 2j \ omega1000} + ..... + h_9 + e ^ {- 9j \ omega1000} $

Représentant l'équation ci-dessus sous forme matricielle, nous avons -

$$ \ begin {bmatrix} H (e ^ {j \ omega_1}) \\. \\. \\ H (e ^ {j \ omega_ {1000}}) \ end {bmatrix} = \ begin {bmatrix} e ^ {- j \ omega_1} & ... & e ^ {- j9 \ omega_1} \\. & &. \\. & &. \\ e ^ {- j \ omega_ {1000}} & ... & e ^ {j9 \ omega_ {1000}} \ end {bmatrix} \ begin {bmatrix} h_0 \\. \\. \\ h_9 \ end {bmatrix} $$

Prenons la matrice 1000 × 1 comme B, la matrice 1000 × 9 comme A et la matrice 9 × 1 comme $ \ hat {h} $.

Donc, pour résoudre la matrice ci-dessus, nous écrirons

$ \ hat {h} = [A ^ TA] ^ {- 1} A ^ {T} B $

$ = [A ^ {* T} A] ^ {- 1} A ^ {* T} B $

où A * représente le conjugué complexe de la matrice A.