Finite impulse response
# Finite impulse response

Nella teoria dei segnali, in particolare nell'elaborazione numerica dei segnali, un sistema dinamico finite impulse response, in italiano risposta finita all'impulso e spesso abbreviato in FIR, è una tipologia di filtro digitale caratterizzata da una risposta impulsiva di durata finita, cioè che si annulla ad un tempo finito. I sistemi la cui risposta non si annulla ad un tempo finito sono detti infinite impulse response (IIR).

## Definizione

L'uscita $y(t)$ di un sistema dinamico lineare tempo-invariante (LTI) a tempo continuo soggetto ad un segnale in ingresso $x(t)$ è descritta dalla convoluzione $y(t)=x(t)*h(t)$, dove $h(t)$ è la risposta del sistema quando l'ingresso $x(t)$ è una funzione a delta di Dirac. L'uscita $y$ è quindi proporzionale alla media dell'ingresso $x$ pesata dalla funzione $h(-\tau )$, traslata di un tempo $t$:

    $y(t)=\int _{-\infty }^{\infty }x(\tau )h(t-\tau )d\tau$

Un sistema dinamico lineare stazionario discreto trasforma la successione in ingresso $\{x\}$ in un'altra successione $\{y\}$, data dalla convoluzione discreta con la risposta $h$ alla delta di Kronecker:

    $y[n]=\sum _{k=-\infty }^{\infty }x[k]\cdot h[n-k]=\sum _{k=-\infty }^{\infty }x[n-k]\cdot h[k]$

Gli elementi di $\{y\}$ possono dipendere da ogni elemento di $\{x\}$. Solitamente $y[n]$ dipende maggiormente dagli elementi in prossimità del tempo $n$.

Per un filtro a tempo discreto l'uscita è una somma pesata dei valori assunti dall'ingresso al tempo corrente ed a tempi precedenti. Tale operazione è descritta dalla seguente equazione:

    $y[n]=h_{0}x[n]+h_{1}x[n-1]+\cdots +h_{N}x[n-N]=\sum _{i=0}^{N}h_{i}x[n-i]$

dove $h_{i}$ sono detti coefficienti del filtro, che determinano la risposta impulsiva, ed $N$ l'ordine del filtro. Per un filtro di ordine $\scriptstyle N$ compaiono $\scriptstyle (N\,+\,1)$ termini nel membro alla sinistra.

## Filtro a media mobile

Un filtro a media mobile è uno dei più semplici filtri FIR, i cui coefficienti $b_{0},\,\dots ,\,b_{N}$ soddisfano l'equazione:

    $b_{i}={\frac {1}{N+1}}$

Ad esempio, un filtro di ordine $N=2$ ha risposta impulsiva:

    $h[n]={\frac {1}{3}}\delta [n]+{\frac {1}{3}}\delta [n-1]+{\frac {1}{3}}\delta [n-2]$

Facendone la trasformata zeta:

    $H(z)={\frac {1}{3}}+{\frac {1}{3}}z^{-1}+{\frac {1}{3}}z^{-2}={\frac {1}{3}}{\frac {z^{2}+z+1}{z^{2}}}$

i cui due poli sono nell'origine e i due zeri in:

    $z_{1}\;=\;-{\frac {1}{2}}\,+\,j{\frac {\sqrt {3}}{2}}\qquad z_{2}\;=\;-{\frac {1}{2}}\,-\,j{\frac {\sqrt {3}}{2}}$

La risposta in frequenza (in radianti per campione) è:

    $H\left(e^{j\omega }\right)={\frac {1}{3}}+{\frac {1}{3}}e^{-j\omega }+{\frac {1}{3}}e^{-j2\omega }$
