I filtri digitali - quarta parte
Un confronto delle varie tipologie di filtri digitali tra loro e con i loro parenti analogici.
Nei numeri precedenti abbiamo descritto la struttura dei filtri digitali, dividendoli in filtri FIR e filtri IIR.
In questo numero metteremo a confronto le varie opzioni disponibili, analogiche e digitali, per il filtraggio dei segnali, cercando di presentare alcuni tra i principali vantaggi e svantaggi di ciascuna categoria.
Filtri analogici e digitali
Molti segnali nascono nel dominio analogico. È meglio utilizzare un filtro analogico (prima della conversione in digitale) oppure un filtro digitale (dopo la conversione)?
Pre- e post- filtraggio
Figura 1: l’elaborazione digitale.
A volte la scelta non si pone neppure: è necessario utilizzare un filtro analogico prima della conversione, chiamato filtro anti-aliasing, che deve assicurare che il segnale da convertire non contenga una significativa quota di energia nella banda di frequenze superiori alla metà della frequenza di campionamento, pena il ribaltamento di tale energia nella parte bassa dello spettro. In altri termini, la mancata eliminazione delle frequenze troppo elevate prima della conversione in digitale provoca la mancata corrispondenza tra il segnale originale e il segnale campionato.
Dopo le varie elaborazioni, il segnale deve in genere ritornare nel dominio analogico, se vogliamo che interagisca con i nostri sensi umani. Anche in questo caso, dopo la conversione può essere necessario un filtraggio, necessariamente analogico, per eliminare alcuni artefatti dovuti alla conversione. Un convertitore DA, almeno in linea di principio, traduce la sequenza di numeri prodotta dalle elaborazioni digitali in valori di tensione elettrica. Dato che i valori numerici da convertire appartengono ad un dominio discreto, cioè hanno una risoluzione finita, il segnale di tensione immediatamente a valle del convertitore AD non varia con continuità ma a gradini. I gradini sono senz’altro piccoli, almeno se la risoluzione è sufficientemente elevata, ma spesso può essere il caso di ammorbidire il risultato applicando un filtro passa-bassi chiamato anti-immagine.
Ma qual è il migliore?
Per quanto riguarda la performance, occorre distinguere di cosa stiamo discorrendo.
Si può, prima di tutto, distinguere tra banda passante, bande di transizione e banda attenuata: la banda passante rappresenta il range di frequenze che dovrebbero attraversare il filtro inalterate; la banda attenuata (anche chiamata banda oscura) rappresenta il range di frequenze che dovrebbero essere bloccate dal filtro; le bande di transizione rappresentano le frequenze intermedie tra banda passante e banda attenuata. Un filtro ideale presenta una risposta piatta in banda passante, un’attenuazione infinita in banda oscura e bande di transizione ripidissime (idealmente verticali). Questo per quanto riguarda la risposta in ampiezza. La risposta in fase, come abbiamo già discusso negli articoli precedenti, dovrebbe essere identicamente nulla o almeno lineare.
Figura 2: confronto tra le risposte in frequenza di un filtro analogico e di un filtro digitale.
Un filtro reale, digitale o analogico, presenta, in genere, una risposta in banda passante non perfettamente piatta. Un filtro analogico non banale, diciamo oltre il quarto ordine, non può permettersi una risposta in frequenza perfettamente costante con una precisione migliore di circa un 1%, principalmente, come abbiamo già scritto, a causa della precisione limitata dei valori dei componenti elettronici (e delle loro inevitabili variazioni, nel tempo e con la temperatura). Un filtro digitale è limitato principalmente dagli errori di arrotondamento ma può arrivare senza troppo sforzo a valori centinaia di volte migliori della propria controparte analogica.
Anche per quanto riguarda la ripidità della banda di transizione e l’attenuazione in banda oscura i filtri digitali offrono caratteristiche di gran lunga migliori rispetto a ciò che è possibile realizzare con i filtri analogici.
La figura 2, tratta da Mixed-Signal and DSP Design Techniques, (Walt Kester, Newnes, 2003), mette a confronto le risposte in ampiezza di un filtro analogico e di un filtro digitale rendendo evidenti le differenti performance.
Anche il comportamento in fase rappresenta un ulteriore punto a favore per i filtri digitali: in un filtro digitale la distorsione di fase può essere resa nulla, mentre con un filtro analogico questo non è possibile.
La frequenza di centro banda
Un parametro di merito dove un filtro analogico presenta ancora dei vantaggi è la velocità di elaborazione. I filtri digitali sono limitati in frequenza a causa del campionamento ed anche perché devono riuscire a finire i calcoli necessari alla realizzazione del filtraggio nel tempo che intercorre tra un campione e l’altro. Se il filtro viene applicato a posteriori, su un segnale registrato (oppure, ad esempio, su un’immagine), e il risultato viene di nuovo memorizzato per essere riprodotto in seguito, allora è possibile utilizzare il filtraggio digitale per realizzare elaborazioni che in analogico non sarebbero neppure lontanamente immaginabili, praticamente a prescindere dalla frequenza del segnale, ovvero dalla quantità di dati da elaborare, ammesso di avere abbastanza pazienza per aspettare i risultati dell’elaborazione. Quando, al contrario, abbiamo bisogno di un’elaborazione in tempo reale, allora il discorso cambia: è possibile costruire filtri analogici attivi in grado di operare a frequenze dell’ordine delle decine o centinaia di MHz, mentre i filtri passivi possono arrivare ad operare anche a frequenze di alcuni GHZ. Contemporaneamente, i filtri digitali in tempo reale sono di fatto limitati alla banda audio o poco più, cioè a qualche decina di kHz.
Il range dinamico
Dal punto di vista della dinamica in ampiezza, la risoluzione a 24 bit comunemente utilizzata al giorno d’oggi per i dispositivi digitali permette una dinamica teorica di oltre 140 dB, pari o superiore a ciò che di meglio riescono a permettersi i dispositivi analogici. Performance reali con un range dinamico intorno ai 120 dB sono senz’altro più che rispettabili sia per i dispositivi analogici che per i dispositivi digitali. La risoluzione a 24 bit è però disponibile solo in banda audio o poco più: spostandosi verso le frequenze caratteristiche delle trasmissioni video, ovvero nel campo dei MHz o delle decine di MHz, i convertitori disponibili non superano in genere la risoluzione di 12 bit (per altro sufficiente per accontentare l’occhio con le immagini in movimento, dato che stiamo parlando di video). Al crescere della velocità di campionamento, la risoluzione, e quindi il range dinamico disponibile, tende a stabilizzarsi intorno agli 8 bit/sample. Le possibilità offerte dalla tecnologia disponibile sono però in evoluzione rapidissima e sono già disponibili commercialmente ADC a 16 bit con una sezione di filtraggio digitale integrata, in grado di eseguire i calcoli necessari all’applicazione di un filtraggio sul segnale con una frequenza dell’ordine delle decine di MHz.
L’elettronica
Un ultimo aspetto che vale la pena considerare riguarda la costruzione del filtro dal punto di vista hardware. Nel caso di filtri relativamente semplici, del primo o del secondo ordine a frequenza fissa e senza particolari esigenze, la versione analogica si può realizzare molto semplicemente ed economicamente, utilizzando un amplificatore operazionale, qualche resistenza e qualche condensatore. Nel caso di necessità più stringenti, a partire dalla ripidità della banda di transizione che a sua volta determina l’ordine del filtro, la situazione può cambiare: un filtro analogico del sesto ordine o superiore è relativamente complesso da progettare, tenendo conto delle tolleranze dei componenti e della dispersione delle caratteristiche, e può richiedere operazioni di taratura tutt’altro che banali. A quel punto può diventare conveniente, anche dal punto di vista della semplicità costruttiva, inserire nel progetto una conversione AD e una conversione DA e realizzare l’elaborazione nel dominio digitale tramite DSP.
Se il segnale è già nel dominio digitale la scelta sembra ovvia, a meno di necessità davvero particolari. Quando invece le elaborazioni non si limitano ad un semplice filtraggio ma coinvolgono operazioni più complesse come, ad esempio, nel caso di una piattaforma di mixaggio, allora il discorso si fa più articolato. Ma avremo modo di discorrerne altrove.