Dlaczego filtry FIR są nadal stabilne, mimo że zawierają bieguny?

15
  • Dlaczego filtry FIR są zawsze stabilne?

  • Ponieważ zawierają bieguny, czy nie powinny być bardziej dotknięte problemami stabilności niż inne?

użytkownik7277
źródło
FIR jest stabilny, jeśli wszystko, co wynosi zero, znajduje się w okręgu jednostki
data datuashvili,
2
Nieprawda: FIR jest zawsze stabilny, a zera mogą znajdować się w dowolnym miejscu, w tym poza okręgiem jednostki. Przykład: filtr [1–6 11–6] ma zera przy z = 1, 2 i 3
Hilmar
ponownie, @Hilmar, zależy to od sposobu wdrożenia FIR. FIR zaimplementowane jako obcięty IIR (TIIR) mogą nie być stabilne wewnątrz. zaimplementowany jako prosty poprzeczny filtr FIR, tak, to zawsze jest stabilne. jest stabilny, nawet jeśli został zaimplementowany przy użyciu „szybkiego splotu” (przy użyciu FFT i „overlap-add” lub „overlap-save”). a czasami gdy jest implementowany jako filtr TIIR, jest stabilny (jeśli wewnętrzny IIR jest stabilny). ale FIR wdrożony jako TIIR może być wewnętrznie niestabilny.
Robert Bristol-Johnnson

Odpowiedzi:

8

Filtry FIR zawierają tylko zera i bez biegunów. Jeśli filtr zawiera bieguny, jest to IIR. Filtry IIR są rzeczywiście dotknięte problemami ze stabilnością i należy się z nimi obchodzić ostrożnie.

EDYTOWAĆ:

Po kilku dalszych przemyśleniach, pisaniu i wyszukiwaniu w sieci, myślę, że mam odpowiedź na to pytanie dotyczące biegunów FIR, które, mam nadzieję, będą satysfakcjonujące dla zainteresowanych stron.

Zaczynając od transformacji Z pozornie bezpolowego filtra FIR: Jak pokazano w odpowiedzi RBJ, bieguny FIR ujawnia się poprzez pomnożenie licznika i mianownikaH(z)przezzN: H(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

H(z)=b0+b1z1+b2z2++bNzN1
H(z)zN W ten sposób uzyskujemy naszeNbieguny u źródła ogólnego filtra FIR.
H(z)=b0zN+b1zN1+b2zN2++bNzN
N

Jednak aby to pokazać, założenie przyczynowości umieszcza się na filtrze. Rzeczywiście, jeśli weźmiemy pod uwagę bardziej ogólny filtr FIR, w którym nie zakłada się związku przyczynowego: Przy początku pojawia się inna liczba biegunów(N-k): G(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

G(z)=b0zk+b1zk1+b2zk2++bNzkN1
(Nk)
G(z)=b0zN+b1zN1+b2zN2++bNzNk

Stwierdzam zatem, co następuje:

  • (Odpowiadając na oryginalne pytanie) Zasadniczo filtr FIR ma bieguny, chociaż zawsze u początku płaszczyzny Z. Ponieważ nigdy nie znajdują się poza kręgiem jednostek, nie stanowią zagrożenia dla stabilności systemu FIR.
  • Liczba biegunów sygnału FIR odpowiada rzędowi filtrów i „stopniowi” acausalności k . W ten sposób można zbudować filtry FIR, które nie mają biegunów, ale filtry te są wtedy beznadziejne - tzn . Nie można ich przetwarzać w czasie rzeczywistym. Dla filtru FIR rzędu N t h , który jest dokładnie przyczynowy ( k = 0 ) , na początku jest N biegunów.NkNth(k=0)N
  • Być może najprostszym sposobem wyobrażenia sobie bieguna u źródła jest prosty element opóźniający: Typowe filtry FIR można następnie traktować jako filtry bezprzerwowe, po których następuje wystarczająca liczba elementów opóźniających, aby były przyczynowe.
    H(z)=z1=1z
Kenneide
źródło
2
Filtry IIR nie są tak naprawdę niebezpieczne.
user7358
19

Filtry FIR zawierają tyle biegunów, ile mają zera. ale wszystkie bieguny znajdują się na początku, .z=0

ponieważ wszystkie bieguny znajdują się wewnątrz koła jednostki, filtr FIR jest pozornie stabilny.

prawdopodobnie nie jest to filtr FIR, o którym myśli OP, ale istnieje klasa filtrów FIR zwanych filtrami obciętymi IIR (TIIR), które mogą mieć biegun na lub poza okręgiem jednostki, który jest anulowany przez zero w tym samym miejscu. najprostszym przykładem jest filtr ruchomej sumy lub średniej ruchomej. ale z perspektywy I / O te filtry TIIR są FIR.

ale nie naiwnie gwarantowałbym „stabilność”. używając języka systemu sterowania, filtr TIIR nie jest „w pełni obserwowalny” i może wydawać się stabilny, ponieważ jego odpowiedź impulsowa wydaje się mieć skończoną długość, ale wewnątrz stanów filtra może dojść do piekła, a ze skończoną precyzją liczbową ta niestabilność wewnętrzna ostatecznie pokaż na wyjściu.

musimy dezorientować się, że „filtry FIR nie mają biegunów” . to nieprawda.

Robert Bristol-Johnson
źródło
Czy możesz matematycznie pokazać, że filtry FIR mają bieguny, ponieważ ich nie widzę.
Jim Clay
Najlepszym przykładem FIR z biegunami jest filtr Cascaded Integrated-Comb (CIC). Zaczyna się od prostego filtra średniej ruchomej (współczynniki takie jak 1, 1, 1, 1) i przepisuje go rekurencyjnie - tym samym wprowadzając biegun. Zobacz link . Często są one implementowane w układach FPGA jako pierwszy krok w dół konwersji, ponieważ w swojej rekurencyjnej formie są dość tanie do wdrożenia obliczeniowego. Zobacz dokumentację Graychip jako przykład. Zazwyczaj są one wdrażane w stałym punkcie, aby zachować stabilność.
David
1
Myślę, że będziemy musieli się zgodzić - w streszczeniu z oryginalnego artykułu Hogenauera czytamy: „Przedstawiono klasę filtrów o skończonej odpowiedzi impulsowej (FIR) z cyfrową fazą liniową do dziesiątkowania (spadek częstotliwości próbkowania) i interpolacji (wzrost częstotliwości próbkowania)”.
David
4
NthN
2
@JimClay, filtr ruchomej sumy lub średniej ruchomej CIC jest z pewnością filtrem FIR. jego IR to F. po prostu normalnie nie jest zaimplementowany jako poprzeczny filtr FIR, ale z pewnością może tak być, jeśli chcesz za niego zapłacić MIPS.
Robert Bristol-Johnnson
14

„Czy możesz matematycznie pokazać, że filtry FIR mają bieguny, ponieważ ich nie widzę”. - Jim Clay

czy możemy założyć, że ten FIR jest przyczynowy?

N.N.+1

skończona odpowiedź impulsowa: h[n]=0n>N., n<0

funkcja przenoszenia FIR:

H(z)=n=+h[n]zn=n=0Nh[n]zn=n=0NzNh[n]zNn=zNn=0Nh[Nn]zn=n=0Nh[Nn]znzN=h[N]+h[N1]z+h[N2]z2++h[1]zN1+h[0]zN(z0)N

wystarczy, że uwzględnisz licznik, a będziesz wiedział, gdzie są zera. ale jest całkiem oczywiste, gdzie wszystkie bieguny są dla filtra FIR. i jest tyle biegunów, ile jest rzędów filtra FIR. zauważ, że te bieguny nie wpływają na pasmo przenoszenia. z wyjątkiem fazy.

Robert Bristol-Johnson
źródło
6
Poprawiono mnie. Dziękuję za wyjaśnienie.
Jim Clay
1

Właściwie nieco z definicji. Ponieważ wprowadzasz skończoną energię, a filtr będzie tylko maksymalnie dostarczał wielokrotność energii wejściowej (jego odpowiedź impulsowa ma skończoną energię), wynikowy sygnał będzie miał maksymalnie wielokrotność energii wejściowej. Nie może rezonować, a tym samym eskalować, podobnie jak filtry IIR. To także stoi za odpowiedzią Kenneidesa.

użytkownik7358
źródło
tak, i to jest tak fałszywe jak odpowiedź Kenneide.
Robert Bristol-Johnnson
2
H(z)=1
2
H(z)=1=zz
H(z)=z
1
H(z)=z1 z=0
1

Nikt tak naprawdę nie poruszył, dlaczego bieguny filtra FIR są usuwalne, więc próbowałem odpowiedzieć na to poniżej.

Filtry FIR będą miały wyjmowane bieguny u źródła, ponieważ wymaga tego ograniczenie ich odpowiedzi impulsowej. To jest wokół bieguna, możliwe jest zdefiniowanie funkcji tak, aby była nadal holomorficzna (różniczkowalna w każdym punkcie swojej dziedziny).

Twierdzenie Riemanna, że ​​jeśli sygnał jest różnicowalny w każdym punkcie jego domeny (z wyjątkiem skończonej liczby punktów), wówczas istnieje sąsiedztwo wokół tych specjalnych punktów, w których funkcja jest ograniczona. Implikacje są w tym twierdzeniu dwukierunkowe, więc ponieważ filtry FIR muszą mieć ograniczoną odpowiedź impulsową, odpowiedź impulsowa musi być różniczkowalna w każdym punkcie koła jednostkowego. W ten sposób sygnał może być przedłużany w spójny sposób, aby nie występowały osobliwości (tj. Bieguny są usuwalne).

z

Tom Kealy
źródło
1
zz
Robert Bristol-Johnson
zz1 .
Tom Kealy