L’importanza del filtraggio digitale può essere compresa osservando che nella maggior parte dei casi i filtri di questo tipo sono implementati via software, ovvero sotto forma di programmi adatti ad essere eseguiti da un comune computer o, più in generale, da una macchina digitale. Esistono infatti dei processori specializzati nel trattamento di segnali digitali, generalmente classificati come Digital Signal Processor (DSP). Tali dispositivi sono caratterizzati dal fatto di supportare delle speciali istruzioni dedicate allo scopo che consentono di eseguire i complessi algoritmi di filtraggio in tempi ridotti e quindi con prestazioni superiori. Il principale vantaggio di realizzare i filtri digitali via software risiede nella possibilità di riprogrammare il filtro al fine di cambiarne le caratteristiche o addirittura il tipo. E’ possibile realizzare filtri digitali che fanno uso di sofisticate e complesse tecniche e che altrimenti sarebbero impossibili da ottenere con il tradizionale approccio analogico. Un esempio è il filtraggio adattativo, ovvero basato su algoritmi che modificano in tempo reale le caratteristiche del filtro al fine di renderle “adatte” al segnale da filtrare. In questo contesto i Filtri digitali FIR rivestono un ruolo centrale.

Indice:

Principali applicazioni dei filtri digitali

I filtri digitali sono utilizzati principalmente per effettuare operazioni di selezione (anti-aliasing, FDM, ecc.) e per la restaurazione dei segnali. Alcuni esempi sono: Anti-aliasing; FDM; Soppressione del rumore ed Equalizzazione.

Tantissimi dei dispositivi audio e video che utilizziamo quotidianamente fanno larghissimo uso di filtri digitali. Giusto per citarne alcuni: smartphone, assistenti intelligenti come Alexa e Google home, cuffie, microfoni, ecc.

Differenza tra filtri digitali e analogici

Una questione importantissima che bisogna tenere presente allo scopo di comprendere l’importanza del filtraggio digitale, riguarda la trasformata di Fourier. Nel mondo analogico la trasformata di Fourier è utilizzata come strumento matematico di ausilio all’analisi e alla progettazione dei sistemi per l’elaborazione del segnale.

Nel mondo digitale, la trasformata di Fourier riveste un ruolo ancora più importante. Infatti, oltre che come strumento di ausilio, essa è utilizzata come strumento operativo per l’implementazione dei sistemi di elaborazione: a partire dal segnale nel dominio del tempo, è possibile ricavare in maniera algoritmica il segnale trasformato nel dominio della frequenza, quindi operare le necessarie operazioni (filtraggio, ecc.) in tale dominio e antitrasformare il segnale risultante.

Questo modo di procedere evidentemente è vantaggioso in tutti quei casi in cui lo sforzo computazionale richiesto per effettuare le operazioni di conversione tempo-frequenza (trasformazione e antitrasformazione) è inferiore rispetto al risparmio computazionale ottenibile scegliendo di operare nel dominio della frequenza. Va detto inoltre che procedendo in questo modo si ha la possibilità di implementare sistemi “ideali”, ovvero filtri di banda ben definita con transizioni perfettamente verticali. L’operazione di convoluzione è un tipico esempio di applicazione in cui spesso conviene operare nel dominio della frequenza.

Calcolo della Trasformata di Fourier Discreta

Nel caso dei segnali tempo discreti (digitali) è possibile definire la Trasformata di Fourier Discreta: si parla di DFT (Discrete Fourier Transformation). Nel corso degli anni sono stati sviluppati diversi algoritmi per calcolare la DFT in maniera “veloce”, ed in questo caso si parla quindi di FFT (Fast Fourier Transformation). Il legame tra la trasformata Z (ZT), utilizzata per i sistemi tempo-discreti, e la DFT è analogo a quello tra la trasformata di Laplace (LT) e la trasformata di Fourier (FT).

Filtri digitali FIR e IIR

I principali tipi di filtri digitali sono i filtri Finite Impulse Response (FIR) e Infinite Impulse Response (IIR). Entrambi sono sistemi LTI (Lineari Tempo Invarianti), tuttavia, mentre i primi hanno una risposta all’impulso finita, i secondi presentano una risposta infinita. Un sistema ha una risposta all’impulso h(n) finita quando esiste un M>0 tale che h(M)=0, oltre che per n<0 e n>M.

Filtraggio Digitale

Il filtraggio digitale che fa uso della trasformata di Fourier discreta precedentemente descritta, può essere schematizzato come riassunto dalla figura seguente:

Come è noto, nel mondo analogico la realizzazione di filtri ideali, ovvero con banda a transizione nulla, è impossibile. Di conseguenza, la banda del filtro è sempre delimitata da un profilo non perfettamente verticale come mostrato nella figura sotto:

Il profilo sarà tanto più verticale quanto più è altro l’ordine del filtro. Bisogna tuttavia osservare che il costo di un filtro analogico cresce in maniera esponenziale con l’ordine.

La domanda da porsi a questo punto è se, nel mondo digitale, sia possibile realizzare filtri ideali. La risposta è che apparentemente questo dovrebbe essere possibile. Tuttavia, si tratta di un abbaglio, in quanto le “non idealità” sono comunque intrinseche nel processo stesso di filtraggio digitale:

  • Errore di quantizzazione;
  • Errore dovuto alla discretizzazione del tempo;
  • Problema banda-durata.

Funzione di trasferimento di un filtro digitale FIR

La relazione che intercorre tra l’ingresso e l’uscita di un filtro FIR è la seguente:

Trasformando questa espressione si ottiene nel dominio Z, si ottiene:

dove:

ovviamente Y(z) e X(z) sono le trasformate Z dei segnali di ingresso e di uscita.

Caratteristiche di un filtro digitale FIR

Le caratteristiche di un filtro FIR sono descritte da un certo numero di parametri, i più importanti dei quali sono:

  • Frequenza di taglio o banda passante;
  • Frequenza di stop o banda di transizione;
  • Oscillazione massima in banda passante;
  • Attenuazione minima in banda proibita;
  • Frequenza di campionamento;

Generalmente tutte le frequenze che caratterizzano un filtro vengono normalizzate rispetto alla frequenza di campionamento e, naturalmente, devono essere tutte più piccole della metà di questa (frequenze più grandi corrispondono a segnali che violano il criterio di Nyquist, quindi non avrebbero senso).

La figura mostra un esempio di filtro passa-basso con i seguenti parametri:

  • Banda passante = 20 Hz
  • Frequenza di stop = 25 Hz
  • Oscillazione massima in banda passante = 0,4 dB
  • Attenuazione minima in banda proibita = 32 dB
  • Frequenza di campionamento = 100 Hz
filtro digitale FIR

In fase di progetto, le specifiche consentono di stabilire l’ordine della funzione di trasferimento, ovvero il parametro M introdotto prima. L’insieme dei coefficienti che compongono la risposta all’impulso h(n) (in numero pari a M+1), prende il nome di kernel del filtro. Esistono diversi metodi per la progettazione dei filtri FIR: progetto mediante finestre, metodo ottimo (filtri di Chebishev), ecc.

Potresti essere interessato a leggere gli articoli:
Funzionamento, architettura e prestazioni del Processore
Sistemi Embedded e conversione analogico digitale (A/D)

Per rimanere aggiornato su questo e altri argomenti iscriviti alla Newsletter.