Mengapa filter FIR tetap stabil meskipun mengandung kutub?


15
  • Kenapa filter FIR selalu stabil?

  • Karena mengandung kutub, bukankah seharusnya mereka lebih terpengaruh oleh masalah stabilitas daripada yang lain?


FIR stabil jika semua nol terletak di satuan lingkaran
dato datuashvili

2
Tidak benar: FIR selalu stabil dan nol dapat berada di mana pun mereka inginkan termasuk di luar lingkaran unit. Contoh: filter [1 -6 11 -6] memiliki nol pada z = 1, 2 dan 3
Hilmar

sekali lagi, @Hilmar, itu tergantung pada bagaimana FIR diimplementasikan. FIR diimplementasikan sebagai Truncated IIR (TIIR) mungkin tidak stabil di dalam. diimplementasikan sebagai filter FIR transversal sederhana, ya, itu selalu stabil. stabil bahkan jika diimplementasikan menggunakan "konvolusi cepat" (menggunakan FFT dan "tumpang tindih-tambahkan" atau "tumpang tindih-simpan"). dan terkadang ketika diterapkan sebagai filter TIIR stabil (jika internal IIR stabil). tetapi suatu FIR yang diimplementasikan sebagai TIIR dapat menjadi tidak stabil secara internal.
robert bristow-johnson

Jawaban:


8

Filter FIR hanya berisi nol dan tidak ada kutub. Jika filter berisi tiang, itu adalah IIR. Filter IIR memang terkena masalah stabilitas dan harus ditangani dengan hati-hati.

EDIT:

Setelah beberapa pemikiran lebih lanjut dan beberapa tulisan dan google-ing, saya pikir saya punya jawaban untuk pertanyaan kutub FIR yang mudah-mudahan akan memuaskan pihak yang berkepentingan.

Dimulai dengan transformasi Z dari filter FIR yang tampaknya tidak berpolitur: Seperti yang ditunjukkan dalam jawaban RBJ, kutub FIR diungkapkan dengan mengalikan pembilang dan penyebutH(z)denganzN: H(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

H(z)=b0+b1z1+b2z2++bNzN1
H(z)zN Dengan demikian menghasilkankutubNkamidi awal filter FIR umum.
H(z)=b0zN+b1zN1+b2zN2++bNzN
N

Namun, untuk menunjukkan ini, asumsi kausalitas ditempatkan pada filter. Memang, jika kita mempertimbangkan filter FIR yang lebih umum di mana kausalitas tidak diasumsikan: Sejumlah kutub yang berbeda(N-k)muncul di titik asal: G(z)=b0z N +b1z N - 1 +b2z N - 2 ++bN

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

Jadi, saya menyimpulkan yang berikut:

  • (Menjawab pertanyaan asli) Secara umum, filter FIR memang memiliki kutub, meskipun selalu pada asal-usul Z-plane. Karena mereka tidak pernah berada di luar lingkaran unit, mereka bukan ancaman bagi stabilitas sistem FIR.
  • NkNth(k=0)N
  • H(z)=z1=1z

2
Filter IIR sebenarnya tidak terlalu berbahaya.
user7358

19

z=0

karena semua kutub terletak di dalam lingkaran unit, filter FIR tampaknya stabil.

ini mungkin bukan filter FIR yang dipikirkan OP, tetapi ada kelas filter FIR yang disebut filter Truncated IIR (TIIR) yang mungkin memiliki kutub di atau di luar lingkaran unit yang dibatalkan oleh nol di lokasi yang sama. contoh paling sederhana dari ini adalah jumlah pemindahan atau filter rata-rata bergerak. tetapi, dari perspektif I / O, filter TIIR ini adalah FIR.

tetapi saya tidak akan secara naif menjamin "stabilitas". menggunakan bahasa sistem kontrol, filter TIIR tidak "sepenuhnya dapat diamati" dan mungkin tampak stabil karena panjangnya respons impulsnya tampak terbatas, tetapi di dalam kondisi filter bisa jadi sangat buruk, dan dengan ketepatan numerik yang terbatas, ketidakstabilan internal pada akhirnya akan muncul di output.

kita harus melepaskan diri dari anggapan bahwa "filter FIR tidak memiliki kutub" . itu tidak benar.


Dapatkah Anda menunjukkan secara matematis bahwa filter FIR memiliki kutub, karena saya tidak melihatnya.
Jim Clay

Contoh terbaik dari FIR dengan kutub adalah filter Cascaded Integrated-Comb (CIC). Dimulai dengan filter rata-rata bergerak sederhana (koefisien seperti 1, 1, 1, 1) dan menulis ulang secara rekursif - dengan demikian memperkenalkan kutub. Lihat tautan . Ini sering diimplementasikan pada FPGAs sebagai langkah pertama dalam konversi turun karena dalam bentuk rekursif mereka cukup murah untuk mengimplementasikan komputasi. Lihat dokumentasi Graychip sebagai contoh. Mereka biasanya diimplementasikan dalam titik tetap untuk menjaga stabilitas.
David

1
Saya pikir kita harus setuju untuk tidak setuju - abstrak dari makalah asli Hogenauer berbunyi "Kelas filter respon impuls fase terbatas linier digital (FIR) untuk penipisan (penurunan laju pengambilan sampel) dan interpolasi (peningkatan laju pengambilan sampel) disajikan."
David

4
NthN

2
@JimClay, filter jumlah-bergerak atau rata-rata bergerak CIC merupakan filter FIR. IR-nya adalah F. itu hanya biasanya tidak diimplementasikan sebagai filter FIR transversal, tapi itu pasti bisa jika Anda ingin membayarnya dengan MIPS.
robert bristow-johnson

14

"Bisakah Anda menunjukkan secara matematis bahwa filter FIR memiliki kutub, karena saya tidak melihatnya." - Jim Clay

dapatkah kita menganggap FIR ini kausal?

NN+1

Respon Impuls Hingga: h[n]=0n>N, n<0

transfer function of the 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

all you have to do is factor the numerator and you'll know where the zeros are. but it's pretty obvious where all the poles are for an FIR filter. and there are as many poles as is the order of the FIR filter. note that these poles do not affect the frequency response. except for phase.


6
I stand corrected. Thanks for the explanation.
Jim Clay

1

Somewhat by definition, actually. Since you input finite energy and the Filter will only maximally deliver a multiple of the energy input (its impulse response has a finite energy), the resulting signal will maximally have a multiple of the energy input. It can not resonate and thus escalate, as IIR filters can. This is behind Kenneides answer as well.


yeah, and it's as false as Kenneide's answer.
robert bristow-johnson

2
Dear Robert Bristow-Johnson, please enlighten us mortals. Where does the FIR filter H(z)=1 have a pole?
user7358

2
okay, good point there. the 0th-order FIR or IIR filter (sometimes known as a "wire") has no poles nor zeros (unless you want to think of H(z)=1=zz where the pole and zero cancel). i stand corrected.
robert bristow-johnson

Does the unit delay H(z)=z have a pole?
user7358

1
well, that's a unit advance. but the unit delay, H(z)=z1 does have a single pole at z=0.
robert bristow-johnson

1

Nobody's really touched upon why the poles of a FIR filter are removable so I've attempted to answer this below.

FIR filters will have removable poles at the origin, because the boundedness of their impulse response requires this. That is around the pole, it's possible to define the function so that it is still holomorphic (differentiable at every point of its domain).

It's a theorem of Riemann that if a signal is differentiable at every point of it's domain (except for finitely many points), then there exists a neighborhood around these special points where the function is bounded. The implications are two way in this theorem, so because FIR filters are required to have a bounded impulse response then the impulse response must be differentiable at every point within the unit circle. Thus, the signal can be extended in a consistent way so that there are no singularities (i.e. the poles are removable).

That's why the z-transform of a FIR filter contains no negative powers of z.


1
Tom, i think the Z-transform of a realizable FIR contain only negative powers of z. well, okay, only non-positive powers of z.
robert bristow-johnson

@robertbristow-johnson sorry, yes. I was thinking of a generating function. However, I don't think the answer above changes under the action of z -> z1.
Tom Kealy
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.