Sei sulla pagina 1di 220

TRATTAMENTO DEI SEGNALI

per la Laurea Magistrale in


Fisica
Dott. Silvia Maria Alessio - Dipartimento di Fisica Generale
Universit`a di Torino - Anno Accademico 2010/2011
7 giugno 2011
Indice
I Concetti teorici di base 7
1 Segnali e sistemi a tempo discreto 8
1.1 Nozioni preliminari . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Segnali a tempo discreto . . . . . . . . . . . . . . . . . . . . . . . 9
1.2.1 Semplici manipolazioni su segnali a tempo discreto . . . . 10
1.2.2 Alcuni segnali speciali utili nel seguito . . . . . . . . . . . 11
1.2.3 Segnali deterministici e segnali casuali . . . . . . . . . . . 18
1.3 Sistemi lineari invarianti nel tempo (LTI) . . . . . . . . . . . . . 19
1.3.1 Risposta allimpulso di un sistema LTI . . . . . . . . . . . 21
1.3.2 Esempio di convoluzione lineare . . . . . . . . . . . . . . . 22
1.3.3 Interconnessioni di sistemi LTI . . . . . . . . . . . . . . . 25
1.3.4 Conseguenze sulla risposta allimpulso di un sistema LTI,
derivanti dai vincoli di stabilit` a e causalit`a . . . . . . . . 25
1.3.5 Sistemi FIR e IIR . . . . . . . . . . . . . . . . . . . . . . 27
1.3.6 Equazioni lineari alle dierenze (LCCDE) . . . . . . . . . 28
1.3.7 Esempi di equazioni lineari alle dierenze . . . . . . . . . 29
1.3.8 Le soluzioni di una LCCDE . . . . . . . . . . . . . . . . 29
1.3.9 Esempio: dalla LCCDE alla risposta allimpulso . . . . . 31
1.3.10 Autovalori ed autofunzioni dei sistemi LTI . . . . . . . . . 33
2
INDICE 3
2 Trasformate di segnali a tempo discreto 36
2.1 Trasformata z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.1.1 Esempi di Trasformate z . . . . . . . . . . . . . . . . . . . 39
2.1.2 Trasformate z razionali . . . . . . . . . . . . . . . . . . . 40
2.1.3 Inversione della Trasformata z . . . . . . . . . . . . . . . 41
2.1.4 Trasformata z convergente sul cerchio unitario . . . . . . 43
2.1.5 Propriet`a della Trasformata z . . . . . . . . . . . . . . . . 44
2.1.6 Funzione di trasferimento di un sistema LTI . . . . . . . . 46
2.1.7 Sequenza di uscita di un sistema LTI . . . . . . . . . . . . 48
2.1.8 Strutture per la realizzazione di sistemi LTI . . . . . . . . 48
2.1.9 Poli e zeri di H(z): forme alternative per H(z) razionali . 52
2.1.10 Sistema inverso . . . . . . . . . . . . . . . . . . . . . . . . 57
2.2 Trasformata di Fourier a tempo discreto (DTFT) . . . . . . . . . 57
2.2.1 Antitrasformata di Fourier . . . . . . . . . . . . . . . . . 59
2.2.2 Esempio di DTFT che converge in media . . . . . . . . . 61
2.2.3 Spettri a righe . . . . . . . . . . . . . . . . . . . . . . . . 62
2.2.4 Periodicit` a dello spettro di x[n] . . . . . . . . . . . . . . . 64
2.2.5 Propriet`a della DTFT . . . . . . . . . . . . . . . . . . . . 65
2.2.6 La DTFT di una sequenza causale di lunghezza nita . . 69
2.3 Discrete Fourier Series (DFS) . . . . . . . . . . . . . . . . . . . . 71
2.3.1 Alcune propriet` a della DFS . . . . . . . . . . . . . . . . . 72
2.3.2 Campionamento nel dominio della frequenza e aliasing nel
dominio del tempo . . . . . . . . . . . . . . . . . . . . . . 74
2.4 Trasformata di Fourier Discreta (DFT) . . . . . . . . . . . . . . . 76
2.4.1 Riassunto delle relazioni di DFS e DFT . . . . . . . . . . 80
2.4.2 Esempio di relazione fra DTFT, DFS e DFT di una sequenza 81
4 INDICE
2.4.3 Alcune propriet` a della DFT . . . . . . . . . . . . . . . . . 83
2.4.4 Convoluzione circolare e convoluzione lineare . . . . . . . 89
2.4.5 Lalgoritmo FFT (Fast Fourier Transform) . . . . . . . . 95
2.4.6 Applicazioni della FFT . . . . . . . . . . . . . . . . . . . 99
3 Il campionamento dei segnali analogici 101
3.1 Teorema del campionamento . . . . . . . . . . . . . . . . . . . . 101
3.2 Ricostruzione del segnale continuo . . . . . . . . . . . . . . . . . 107
3.3 Aliasing e ltro anti-aliasing . . . . . . . . . . . . . . . . . . . . . 110
3.4 Principio di indeterminazione . . . . . . . . . . . . . . . . . . . . 113
3.5 Segnali analogici a supporto limitato in tempo e frequenza . . . . 117
3.6 Relazioni tra le variabili frequenziali . . . . . . . . . . . . . . . . 120
II Introduzione ai ltri numerici 123
4 Caratteristiche dei ltri numerici 124
4.1 Nozioni generali . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.2 La risposta di ampiezza dei ltri numerici . . . . . . . . . . . . . 125
4.3 La risposta di fase dei ltri numerici . . . . . . . . . . . . . . . . 128
5 Progetto di ltri numerici 136
5.1 Considerazioni preliminari . . . . . . . . . . . . . . . . . . . . . . 136
5.2 Speciche dei ltri numerici . . . . . . . . . . . . . . . . . . . . . 137
5.2.1 Vincoli sulla risposta di ampiezza . . . . . . . . . . . . . . 137
5.2.2 Vincoli sulla risposta di fase . . . . . . . . . . . . . . . . . 142
5.3 Selezione del tipo di ltro . . . . . . . . . . . . . . . . . . . . . . 145
5.4 Selezione del metodo di progetto . . . . . . . . . . . . . . . . . . 148
INDICE 5
5.5 Criteri di approssimazione . . . . . . . . . . . . . . . . . . . . . . 149
5.6 Caratteristiche dei ltri FIR a fase lineare . . . . . . . . . . . . . 152
5.6.1 Fattorizzazione della risposta a fase nulla . . . . . . . . . 154
5.6.2 Zeri della funzione di trasferimento dei ltri FIR a GLP . 158
5.6.3 Rappresentazione alternativa di G() . . . . . . . . . . . 159
5.7 Approssimazioni equiripple per ltri FIR a GLP . . . . . . . . . 160
5.8 Stima a priori dellordine . . . . . . . . . . . . . . . . . . . . . . 169
5.9 Procedimento iterativo per ltri ottimi . . . . . . . . . . . . . . . 170
5.10 Propriet`a dei ltri FIR ottimi secondo il criterio minimax . . . . 175
5.11 Il metodo minimax per i ltri passa-banda . . . . . . . . . . . . . 180
5.12 Cenni sul progetto di ltri IIR . . . . . . . . . . . . . . . . . . . 180
5.13 Attuazione del ltraggio numerico . . . . . . . . . . . . . . . . . 181
5.14 Filtraggio a fase nulla . . . . . . . . . . . . . . . . . . . . . . . . 182
5.15 Tecnica di ltraggio con decimazione . . . . . . . . . . . . . . . . 183
III Analisi spettrale stazionaria 190
6 Segnali deterministici: spettro di energia 191
6.1 Correlazione di segnali a tempo discreto . . . . . . . . . . . . . . 191
6.2 Il teorema di Wiener - Khinchin . . . . . . . . . . . . . . . . . . 194
6.3 Analisi di Fourier tramite DFT . . . . . . . . . . . . . . . . . . . 195
6.3.1 Eetto del windowing . . . . . . . . . . . . . . . . . . . . 197
6.3.2 Eetto del campionamento spettrale . . . . . . . . . . . . 204
6.4 Le nestre classiche e le loro caratteristiche . . . . . . . . . . . . 208
6.5 La nestra di Kaiser . . . . . . . . . . . . . . . . . . . . . . . . . 213
6 INDICE
7 Lapproccio statistico allanalisi dei segnali 217
IV Analisi spettrale evolutiva 218
8 La Short Time Fourier Transform (STFT) 219
9 La Trasformata Continua di Wavelet (CWT) 220
Parte I
Concetti teorici di base
7
Capitolo 1
Segnali e sistemi a tempo
discreto
1.1 Nozioni preliminari
Elenchiamo alcune denizioni e concetti preliminari.
Segnale = insieme di valori di una variabile, esprimente la variazione di
una grandezza sica in qualche dominio (per esempio tempo o spazio).
x = x(t) con t e x continui rappresenta un segnale analogico.
La misura o campionamento con passo T
c
costante di un segnale analogico
(Fig. 1.1) conduce a una
sequenza di numeri reali (o complessi) che chiamiamo segnale a tempo
discreto
x = x[n] = x(nT
c
)
dove n = tempo discreto (numero di campioni, adimensionale).
Elaborazione, analisi del segnale = insieme di tecniche atte a rappresentare
il segnale, eventualmente a trasformarlo e ad estrarre linformazione che
esso contiene riguardo allo stato o al comportamento del sistema sico da
cui deriva.
Lelaborazione di un segnale a tempo discreto tramite un sistema digitale
che usa unaritmetica a precisione nita trasforma il segnale a tempo di-
screto in un segnale numerico o digitale, discreto in tempo e in ampiezza
x, ma noi non ci occuperemo di questo: nella nostra trattazione il tempo
`e discreto ma x `e continua.
Scopo dellelaborazione ed analisi:
8
1.2. SEGNALI A TEMPO DISCRETO 9
t
x
(
t
)
Figura 1.1: Un segnale analogico ed il suo campionamento
estrarre parametri caratteristici del segnale
separare un segnale utile dal rumore
modicare il segnale per presentarlo in una forma pi` u facilmente
interpretabile ecc...
Lanalisi avviene nei domini duali
del tempo e
della frequenza
ed `e spesso facilitata da elaborazione/i (trasformazione/i) operate da un
sistema a tempo discreto: un operatore che mappa una sequenza di
ingresso (input) in una sequenza di uscita (output), ossia
segnale di input sistema a tempo discreto segnale di output.
Si noti che sistema `e un termine mutuato dallhardware; per noi
sistema = operatore matematico, algoritmo software.
1.2 Segnali a tempo discreto
Segnale:
x[n] n(, +)
con n intero.
Il segnale x[n], reale o complesso, esiste solo per valori interi di n; altrove
non `e denito. Se ottenuto campionando, x[n] = x(nT
c
) con
T
c
= intervallo di campionamento.
Tipicamente i segnali a tempo discreto vengono gracati con stem plot
simili a quello in Fig. 1.2.
10 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7
n
x
[
n
]
Figura 1.2: Esempio di stem plot
Energia del segnale:
E =
+

n=
|x[n]|
2
.
Pu`o essere nita o innita.
I segnali con E nita sono detti segnali di energia (energy signals).
Molti segnali che non hanno E nita hanno per` o potenza media nita
(power signals):
P = lim
N
1
2N + 1
+

n=
|x[n]|
2
.
Se E `e nita, P `e nulla.
Un segnale periodico `e un segnale per cui per ogni n
x[n +N] = x[n]
ed il suo periodo `e il minimo N per cui la relazione vale.
Un segnale periodico ha E innita per n(, +) mentre `e nita lener-
gia su un un singolo periodo,

N1
n=0
|x[n]|
2
.
La potenza media di un segnale periodico `e nita ed uguale alla potenza
media su un singolo periodo,
1
N

N1
n=0
|x[n]|
2
.
1.2.1 Semplici manipolazioni su segnali a tempo discreto
Trasformazioni della variabile indipendente n:
1. n n k con k intero: traslazione (Fig. 1.3).
1.2. SEGNALI A TEMPO DISCRETO 11
6 5 4 3 2 1 0 1 2 3 4 5 6
x
[
n
]
6 5 4 3 2 1 0 1 2 3 4 5 6
x
[
n

3
]
6 5 4 3 2 1 0 1 2 3 4 5 6
n
x
[
n
+
2
]
Figura 1.3: Esempi di traslazioni di un segnale a tempo discreto. Per rendere ben
visibile la trasformazione `e stato impiegato il colore rosso per alcuni campioni
k > 0: ritardo (traslazione a destra) di k unit`a di tempo discreto.
k < 0: anticipo (traslazione a sinistra) di k unit`a di tempo discreto.
2. n n: riessione del segnale attorno a n = 0 cio`e attorno allorigine
dei tempi discreti (folding; Fig. 1.4).
3. n k n: notando che x[n] = x[0 n] si comprende che si tratta di
riessione del segnale attorno a n = k (Fig. 1.5).
k > 0: riessione con ritardo (traslazione a destra di x[n]).
k < 0: riessione con anticipo (traslazione a sinistra di x[n]).
Si osservi che k n = (n k): loperazione si pu` o eettuare anche
formando dapprima x[nk] e poi eseguendo un folding attorno a nk = 0,
ossia attorno a n = k.
4. n k
dec
n con k
dec
intero: decimazione del segnale (Fig. 1.6).
1.2.2 Alcuni segnali speciali utili nel seguito
Impulso discreto o impulso unitario o discreta (Fig. 1.7):
[n] =
_
1 n = 0
0 altrove.
12 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
4 3 2 1 0 1 2 3 4
x
[
n
]
4 3 2 1 0 1 2 3 4
n
x
[

n
]
Figura 1.4: Esempio di riessione di un segnale a tempo discreto. Per rendere
ben visibile la trasformazione sono stati impiegati colori dierenti per alcuni
campioni
4 3 2 1 0 1 2 3 4
x
[
n
]
4 3 2 1 0 1 2 3 4
x
[

n
]
4 3 2 1 0 1 2 3 4
x
[
2

n
]
4 3 2 1 0 1 2 3 4
n
x
[
n

2
]
Figura 1.5: Esempio di riessione di un segnale a tempo discreto attorno a
n = k. La sequenza x[n] `e disegnata rovesciata, collorigine dei tempi traslata
a n = k. Per rendere ben visibile la trasformazione `e stato impiegato il colore
rosso per alcuni campioni
1.2. SEGNALI A TEMPO DISCRETO 13
6 5 4 3 2 1 0 1 2 3 4 5 6
x
[
n
]
6 5 4 3 2 1 0 1 2 3 4 5 6
n
x
[
2
n
]
Figura 1.6: Esempio di decimazione. Per rendere ben visibile la trasformazione
`e stato impiegato il colore rosso per alcuni campioni
5 4 3 2 1 0 1 2 3 4 5
0
1
n

[
n
]
Figura 1.7: Impulso discreto
Impulso discreto ritardato: [n k] (Fig. 1.8).
Qualsiasi segnale discreto `e esprimibile come somma di campioni unitari
scalati e ritardati:
x[n] =
+

k=
x[k][n k] =
+

k=
x[n k][k].
Gradino unitario discreto (Fig. 1.9):
u[n] =
_
1 n 0
0 n < 0.
14 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
5 4 3 2 1 0 1 2 3 4 5
0
1
n

[
n

3
]
Figura 1.8: Impulso discreto ritardato
5 4 3 2 1 0 1 2 3 4 5
0
1
n
u
[
n
]
Figura 1.9: Gradino unitario
Il gradino unitario `e utile per denire le cosiddette sequenze causali : se-
quenze per cui x[n] = 0 per n < 0.
I segnali u[n] e [n] sono legati:
u[n] =
n

k=
[k] =

k=0
[n k]
[n] = u[n] u[n 1].
Sinusoide discreta: `e comodo derivarla da una sinusoide continua, pen-
sando di campionarla a passo costante T
c
.
1.2. SEGNALI A TEMPO DISCRETO 15
Ad esempio prendiamo una sinusoide con ampiezza unitaria, fase iniziale
nulla, frequenza f e periodo T = 1/f:
x(t) = sin (2ft)
x[n] = sin (2fnT
c
).
Denendo la frequenza adimensionale o normalizzata
= fT
c
= T
c
/T
si ottiene
x[n] = sin (2n) = sin (n)
con = 2 = pulsazione o frequenza angolare discreta, dove con la
parola discreta si intende per segnali a tempo discreto:
[]=radianti/campione (angolo, adimensionale),
[] = cicli/campione (adimensionale),
[n] = campioni (adimensionale).
Una sinusoide a tempo discreto non `e sempre periodica: lo `e se la sua `e
razionale.
Per la periodicit` a con periodo N occorre che sia x[n] = x[n +N], ossia
sin [2(n +N)] = sin (2n)
e questo `e vero se e solo se esiste un intero k tale che 2N = 2k, il che
`e possibile se e solo se
= k/N
e quindi anche 1/ = T/T
c
= N/k, ossia
kT = NT
c
;
e inoltre
= 2k/N.
La lunghezza del periodo `e pari al denominatore di = k/N dopo ridu-
zione a rapporto di numeri primi fra loro.
Se T/T
c
= N/k non `e solo razionale ma intero, allora un singolo periodo
T della sinusoide analogica contiene un numero intero di intervalli T
c
di
campionamento (Fig. 1.10). Il caso pi` u generale di T/T
c
= N/k razionale
invece comporta che ci vogliano k periodi T per contenere esattamente N
intervalli T
c
(Fig. 1.11).
Per tutte le = k/N con N ssato, il periodo `e sempre N nel discreto: si
noti che nel discreto il periodo non `e linverso della frequenza (N = 1/)!
16 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
t
x
(
t
)
Figura 1.10: Sinusoide discreta con T/T
c
intero
t
x
(
t
)
Figura 1.11: Sinusoide discreta con T/T
c
razionale
La generica sinusoide discreta periodica `e dunque
x[n] = sin
_
2
N
kn
_
e presenta fase simmetrica in k (frequenza) e n (tempo).
Se ora pensiamo ad un k variabile, cio`e ad un set di sinusoidi di varia
frequenza, si ha periodicit` a con periodo N anche in k (oltreche in n).
Si ha dunque periodicit` a in con periodo N/N = 1 e periodicit`a in
con periodo 2N/N = 2; in altri termini, due sinusoidi discrete con
separate di un multiplo di 2 sono indistinguibili, com`e evidente poiche
sin [(2k +)n] = sin (n).
Da quanto detto comprendiamo che la variabile frequenza `e intrinseca-
1.2. SEGNALI A TEMPO DISCRETO 17
mente discreta ed associata a periodicit` a, in ogni rappresentazione che si
basi su un set di sinusoidi periodiche a tempo discreto.
Come per rappresentare x[n] periodica con periodo N bastano N valori di
n, ad esempio n = 0, N 1, cos` per esprimere tutte le possibili distinte
sinusoidi periodiche con periodo N bastano N valori di k, ad esempio
k = 0, N 1.
Per comodit` a di calcolo `e spesso utile rappresentare seni e coseni reali
mediante combinazioni di esponenziali complessi, del tipo
x[n] = e
jn
= cos (n) +j sin (n) j =

1
con
sin (n) =
1
2j
(e
jn
e
jn
)
cos (n) =
1
2
(e
jn
+e
jn
).
Per gli esponenziali complessi valgono propriet` a analoghe a quelle delle
sinusoidi.
Nel seguito, segnale sinusoidale discreto e segnale esponenziale com-
plesso discreto sono considerati termini sostanzialmente equivalenti ed
usati indierentemente.
Le N sinusoidi o gli N esponenziali complessi distinguibili sono detti sinu-
soidi ed esponenziali complessi in relazione armonica tra loro: come det-
to, hanno frequenze multiple, secondo un fattore intero k, della frequenza
fondamentale (positiva, razionale)

0
= 1/N
associata alla periodicit` a ssata, N.
Possiamo quindi scrivere tali N sinusoidi come
x
k
[n] = e
j2k
0
n
= e
j
2
N
kn
o equivalentemente come
x
k
[n] = sin (2k
0
n) = sin
_
2
N
kn
_
.
Lindice intero k pu` o assumere N valori: in generale k = n
0
, n
0
+ N 1
e di solito k = 0, N 1. Si noti che la scelta k = 1, N sarebbe del tutto
equivalente ma la notazione pi` u usata `e quella in cui nel set `e inclusa la
frequenza zero.
Tutte le =
k
N
condividono con
0
la periodicit` a nel tempo con periodo
N.
Riassumendo:
18 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
periodicit` a in n con periodo N 0 n N 1,
periodicit` a in k con periodo N 0 k N 1,
periodicit` a in con periodo 1 0 < 1,
periodicit` a in con periodo 2 0 < 2.
Alternativa: k =
N
2
,
N
2
1 che `e adatta nel caso di N pari, ad esempio
una potenza intera di 2 come nella FFT, v. sottosezione 2.4.5.
Tale scelta comporta < e
1
2
<
1
2
, intervalli del tutto
equivalenti a quelli prima citati.
In conclusione:
per lavorare con sinusoidi discrete basta un intervallo di di ampiezza
2. Scegliamo lintervallo (, ); allora
ogni sinusoide discreta con || > ossia || >
1
2
`e indistinguibile (`e
alias di) unaltra sinusoide in || < .
Possiamo stabilire che la massima frequenza per una sinusoide di-
screta `e = (corrispondente a =
1
2
) mentre la minima
frequenza `e = 0 (o = 2). Si noti la dierenza dal caso analogi-
co, in cui < f < e le alte frequenze sono prossime a ,
le basse sono adiacenti a zero.
Le frequenze (, ) sono rappresentative di tutte le sinusoidi
discrete esistenti (intervallo principale o fondamentale).
Del tutto equivalente `e esprimere lintervallo fondamentale come (0, 2).
1.2.3 Segnali deterministici e segnali casuali
Elaborare ed analizzare un segnale richiede lassunzione di un modello del se-
gnale, ossia di una sua descrizione matematica.
Se una descrizione univoca `e possibile usando una formula matematica od una
regola ben denita, il segnale `e detto deterministico: i suoi valori passati e
presenti sono noti e quelli futuri sono esattamente predicibili.
Se non si sa dare una tale descrizione o se la descrizione `e troppo complicata
per essere utile si adotta un punto di vista diverso, che implica che il segnale
non evolva in modo esattamente predicibile e debba essere trattato con metodi
statistici (medie, probabilit` a). Un tale segnale `e detto casuale o random.
Ad esempio, tipicamente le sequenze derivanti da misure ripetute di grandezze
siche sono da intendersi come segnali di questo tipo.
La distinzione `e talvolta sottile: ad esempio, anche una somma di segnali perio-
dici pu` o essere trattata come random se le fasi sono casuali e vi `e del rumore
sovrapposto ai segnali stessi.
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 19
Nella prima parte del corso tratteremo segnali deterministici; in seguito passe-
remo allapproccio statistico per i segnali casuali.
1.3 Sistemi lineari invarianti nel tempo (LTI)
Un sistema `e una trasformazione univoca che mappa una sequenza di input in
una di output:
input x[n] operatore T output y[n]
ossia
y[n] = T {x[n]}
(algoritmo che dato x[n] determina y[n]).
In generale, y[n] per un qualsiasi n = n
0
dipende dai valori di x[n] a tutti gli n.
Come esempi di sistemi possiamo citare i ltri numerici di cui parleremo in
seguito, dei quali un tipo molto semplice `e loperatore media mobile
y[n] =
1
M
1
+M
2
+ 1
+M
2

k=M
1
x[n k].
Classi di sistemi vengono poi denite ponendo dei vincoli sulle propriet` a della
trasformazione T {}.
1. Linearit` a : T {} = L{}
se L{ax
1
[n] +bx
2
[n]} = aL{x
1
[n]} +bL{x
2
[n]}
con a, b costanti arbitrarie.
La linearit`a comporta
ladditivit` a
lomogeneit` a (le costanti possono essere portate fuori dal segno L{}).
Esempi di sistemi lineari:
la media mobile
laccumulatore y[n] =

n
k=
x[k]
il ritardatore y[n] = x[n n
0
]
ecc...
Esempio di un sistema non lineare:
20 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
il quadratore y[n] = {x[n]}
2
(per x[n] reale).
Questo sistema `e anche privo di memoria perche y[n] dipende solo
dal valore contemporaneo dellinput, x[n].
2. Invarianza nel tempo o alla traslazione (sistemi LTI = Linear Time Inva-
riant):
se valendo y[n] = L{x[n]} vale anche y[nk] = L{x[n k]}, con k intero
qualsiasi, il sistema `e LTI.
I sistemi LTI hanno importantissime applicazioni nellelaborazione nume-
rica dei segnali.
Esempi di sistemi LTI:
tutti quelli lineari citati in precedenza .
Esempio di sistema non invariante:
il decimatore (downsampler), y[n] = x[Mn] con M intero qualsiasi.
Per vedere la non invarianza alla traslazione di questo sistema de-
niamo x
1
[n] = x[nk] e sia y
1
[n] loutput o risposta corrispondente:
y
1
[n] = x
1
[Mn] = x[Mn k].
Ma y[n k] = x[M(n k)] = x[Mn Mk] = y
1
[n]:
con un input traslato di k non si ha unuscita traslata di k, se non
nel caso banale di M = 1.
3. Causalit` a:
un sistema `e causale se per ogni scelta di n
0
, loutput y[n
0
] dipende solo
dai valori dellinput per n n
0
: il sistema non anticipa loutput.
Esempi di sistemi causali e non causali:
il ritardatore y[n] = x[n n
0
] `e causale se n
0
0 (caso che implica
ritardo) e non causale se n
0
< 0 (caso che implica anticipo)
la media mobile y[n] =
1
M
1
+M
2
+1

+M
2
k=M
1
x[n k] `e causale se
M
1
0 e M
2
0
laccumulatore y[n] =

n
k=
x[k] `e causale
il quadratore y[n] = {x[n]}
2
`e causale
il decimatore y[n] = x[Mn] `e causale se M > 1 (ad esempio y[1] =
x[M]).
4. Stabilit` a:
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 21
un sistema `e stabile secondo la denizione BIBO (Bounded Input, Boun-
ded Output) se e solo se un input limitato produce un output limitato:
per ogni n,
|x[n]| A |y[n]| BA
dove A e B sono costanti positive e nite.
Si noti che la stabilit` a `e una propriet` a del sistema e non dellinput, quindi
la relazione BIBO deve valere per un qualsiasi input limitato.
Esempi di sistemi stabili:
la media mobile
il ritardatore
il decimatore
il quadratore.
Esempio di sistema non stabile:
laccumulatore.
Per vericare che un sistema non `e BIBO ci basta trovare un input
limitato per il quale non si ha stabilit` a. Nel caso dellaccumulatore,
se x[n] = u[n],
y[n] =
n

k=
x[k] =
_
0 n < 0
n + 1 n 0.
Ma la quantit`a n+1 pur essendo nita non `e limitata perche non esiste
un B > 0 ssato nito tale che n+1 BA per ogni n. Pertanto
laccumulatore non `e un sistema stabile secondo la denizione BIBO.
1.3.1 Risposta allimpulso di un sistema LTI
Denendo, ammesso che esista per il sistema in esame, la risposta allimpulso
come
h[n] = L{[n]}
e ricordando che x[n] =

+
k=
x[k][nk], possiamo esprimere mediante h[n]
la risposta (output, uscita) del sistema LTI ad un input qualsiasi:
y[n] = L{x[n]} = L
_
+

k=
x[k][n k]
_
da cui per la linearit`a
y[n] =
+

k=
x[k]L{[n k]}
22 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
e inne per linvarianza alla traslazione
y[n] =
+

k=
x[k]h[n k] x[n] h[n] =
+

k=
x[n k]h[k] h[n] x[n]
che denisce la convoluzione lineare di x[n] e h[n], operazione per la quale vale
la propriet` a commutativa.
Da questa formula, y[n] appare inuenzato da tutti gli x[n] passati, presenti e
futuri se h[n] = 0 per n (, +): in generale dunque non si ha causalit`a.
La sequenza h[n] caratterizza completamente il sistema LTI nel dominio del
tempo.
Se le sequenze da convolvere, sebbene formalmente di durata innita, sono per`o
nulle al di fuori di un certo intervallo nito di valori di n: x[n] = 0 per 0 n
N
1
1, h[n] = 0 per 0 n N
2
1, allora la somma di convoluzione ha limiti
niti e la durata eettiva di y[n] = h[n] x[n] `e a sua volta nita: y[n] = 0 per
0 n N
1
+N
2
2 (durata eettiva N
1
+N
2
1).
1.3.2 Esempio di convoluzione lineare
Facciamo un esempio di calcolo di una convoluzione lineare nel caso di due
sequenze causali non identicamente nulle solo in 0 n N
1
1 = 12 e 0 n
N
2
1 = 4 rispettivamente.
La procedura per ottenere y[n] =

+
k=
x[k]h[n k] `e la seguente:
1. ssare un valore n = n
0
del tempo discreto per il quale si desidera calcolare
y[n]
2. rovesciare h[k] per ottenere h[k] (k = 0, N
2
1)
3. traslare h[k] di n
0
campioni a destra (sinistra) per n
0
> 0 (n
0
< 0) per
ottenere h[n
0
k]
4. moltiplicare campione per campione x[k] per h[n
0
k] per ottenere una
sequenza prodotto v
n
0
[k] = x[k]h[n
0
k]
5. sommare tutti i valori di v
n
0
[k] (solo un numero nito di essi sar`a non
nullo) per avere y[n = n
0
]
6. ripetere per ogni n = n
0
(solo un numero nito di valori di y[n
0
] sar`a
diverso da zero).
Il campione y[n
0
] `e nullo quando tutti i valori di v
n
0
[k] sono nulli per quel dato
valore n
0
: quindi determinare la durata eettiva di y[n] equivale a determinare
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 23
0 1 2 3 4
k
h
[
k
]
Figura 1.12: Esempio di calcolo di una convoluzione lineare: la sequenza h[k]
in quale intervallo di valori di n
0
la sequenza v
n
0
[k] ha tutti valori nulli. Il pro-
cedimento, nel caso della risposta allimpulso mostrata in Fig. 1.12, `e illustrata
in Fig. 1.13. Nellesempio, N
1
= 13 e N
2
= 5.
Dalla Fig. 1.13 si evince che tutti i termini prodotto sono nulli per n
0
1 e
n
0
N
1
+ N
2
1, quindi y[n] = 0 per 0 n N
1
+ N
2
2: y[n] ha durata
eettiva pari a N
1
+N
2
1, come prima aermato.
Allinterno di tale intervallo 0 n N
1
+N
2
2 sono per` o presenti dei transitori
iniziale e nale. I valori di n esenti dai transitori vanno da n
0
N
2
+ 1 = 0,
ossia n = n
0
= N
2
1, a n = n
0
= N
1
1; quindi la lunghezza totale della
convoluzione esente da transitori `e N
1
N
2
+ 1.
I limiti niti della

k
nella convoluzione precedente hanno valori che dipendono
da n
0
. Infatti per un certo valore n
0
di n, e con k variabile, i termini della

k
sono diversi da zero se contemporaneamente
0 k N
1
1
0 n k N
2
1 N
2
+ 1 k n 0.
Possiamo riassumere le due condizioni scrivendo
max(0, n N
2
+ 1) k min(N
1
1, n)
per cui la somma di convoluzione assume la forma con limiti niti
y[n] =
min(N
1
1,n)

k=max(0,nN
2
+1)
x[k]h[n k].
Nel nostro esempio, per n = n
0
= 1 avremmo con N
1
= 13 e N
2
= 5 i limiti
max(0, 1 5 + 1) = 0 e min(12, 1) = 1 per cui y[1] =

1
k=0
x[k]h[n k] =
x[0]h[1] +x[1]h[0], come illustrato in Fig. 1.14, ecc...
2
4
C
A
P
I
T
O
L
O
1
.
S
E
G
N
A
L
I
E
S
I
S
T
E
M
I
A
T
E
M
P
O
D
I
S
C
R
E
T
O
0 1 2 3 4 5 6 7 8 9 10 11 12
x
[
k
]
0 1 2 3 4 5 6 7 8 9 10 11 12
h
[

k
]
n
0
= 1
0 1 2 3 4 5 6 7 8 9 10 11 12
h
[
9

k
]
n
0
= 9
0 1 2 3 4 5 6 7 8 9 10 11 12
k
h
[
N
1
+
N
2

k
]
n
0
= N
1
+N
2
1 = 17
Figura 1.13: Esempio di calcolo di una convoluzione lineare: la sequenza x[n] (pannello superiore) e la sequenza h[k] disegnata rovesciata
a partire da diversi valori di n
0
. Per il calcolo di y[n
0
], moltiplicare ogni campione di x[n] compreso tra le righe verticali verdi con il
campione corrispondente della sequenza rappresentata in uno dei pannelli inferiori e sommare.
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 25
0 1 2 3 4 5 6 7 8 9 10 11 12
x
[
k
]
0 1 2 3 4 5 6 7 8 9 10 11 12
k
h
[
1

k
]
Figura 1.14: Limiti niti della sommatoria nella convoluzione lineare dellesem-
pio precedente: caso del calcolo del campione y[n
0
= 1]. I termini di prodotto
non nulli si trovano tra le linee verticali rosse
1.3.3 Interconnessioni di sistemi LTI
Sistemi LTI in cascata o in serie (Fig. 1.15, pannello a):
y[n] = (x[n] h
1
[n]) h
2
[n]
x[n] h
1
h
2
y[n].
Vale la propriet` a commutativa.
Sistemi LTI in parallelo (Fig. 1.15, pannello b):
y[n] = x[n] h
1
[n] +x[n] h
2
[n]
x[n] h
1
+h
2
y[n].
Vale la propriet` a distributiva rispetto alla somma.
1.3.4 Conseguenze sulla risposta allimpulso di un sistema
LTI, derivanti dai vincoli di stabilit`a e causalit`a
1. Stabilit` a: imporre che |x[n]| A per ogni n dia |y[n]| BA
implica (condizione necessaria e suciente) che h[n] sia assolutamente
sommabile, ossia
S =
k=+

k=
|h[k]| < .
26 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
Figura 1.15: Interconnessioni di sistemi LTI in serie (a) ed in parallelo (b)
La condizione `e suciente in quanto se S `e nita, y[n] `e limitato per un
input limitato:
|y[n]| = |
k=+

k=
h[k]x[n k]| =
k=+

k=
|h[k]||x[n k]|
e se |x[n]| A allora |y[n]| A

k=+
k=
|h[k]| = AS, da cui si vede che
B = S non dipende dallinput x[n] ma solo da h[n].
Si pu` o poi mostrare che la condizione `e anche necessaria perche se S =
si pu` o trovare un input limitato per il quale loutput non `e limitato.
In un sistema stabile, un input di durata nita provoca sempre una rispo-
sta a sua volta di durata nita, quindi transiente.
2. Causalit` a: imporre che y[n] per n = n
0
dipenda solo da x[n] n n
0
(valori
passati) implica che sia h[n] = 0 per n < 0.
Infatti
y[n
0
] =
k=+

k=
h[k]x[n
0
k] =
=
k=1

k=
h[k]x[n
0
k] +
k=+

k=0
h[k]x[n
0
k] =
= . . . h[3]x[n
0
+ 3] +h[2]x[n
0
+ 2] +h[1]x[n
0
+ 1] +h[0]x[n
0
] +
+h[1]x[n
0
1] +h[1]x[n
0
1] +h[2]x[n
0
2] +h[3]x[n
0
3] . . .
da cui si vede chiaramente che se i valori futuri dellinput (. . . x[n
0
+ 3],
x[n
0
+2] . . .) devono essere assenti in y[n
0
], deve valere la condizione h[n] =
0 per n < 0.
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 27
La causalit`a porta a scrivere la convoluzione come
y[n] =
+

k=0
x[n k]h[k] =
n

k=
x[k]h[n k]
e se poi si ha pure un input causale,
y[n] =
n

k=0
x[n k]h[k] =
n

k=0
x[k]h[n k]
Se ne deduce che la somma di convoluzione `e limitata tra 0 e n per un
sistema causale con input causale, anche se x[n] e h[n] sono innitamente
lunghe.
Tale somma di convoluzione non `e comunque realizzabile (calcolabile) in
pratica, perche richiede la memorizzazione, al crescere di n, di un numero
non limitato di campioni delle sequenze x[n] e h[n].
Un sistema causale con un input causale d`a un output causale: infatti
...................
y[1] = 0
y[0] = x[0]h[0]
y[1] = x[1]h[0] +x[0]h[1]
...................
1.3.5 Sistemi FIR e IIR
Consideriamo alcuni esempi di sistemi per introdurre la distinzione tra sistemi
FIR (Finite Impulse Response) e IIR (Innite Impulse Response).
Media mobile:
h[n] =
1
M
1
+M
2
+ 1
+M
2

k=M
1
[n k] =
_
1
M
1
+M
2
+1
M
1
n M
2
0 altrove.
Pertanto la risposta allimpulso del sistema ha lunghezza nita: si dice che
il sistema `e FIR = Finite Impulse Response.
In questo caso `e sempre S < : un sistema FIR `e sempre stabile.
Inoltre come gi` a sappiamo, il sistema `e causale se M
1
0 e M
2
0.
Si noti che in generale ogni sistema FIR non causale pu` o essere reso tale
mettendolo in cascata con un opportuno sistema ritardatore.
28 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
Accumulatore:
h[n] =
n

k=
[k] =
_
1 n 0
0 n < 0
u[n]
Pertanto la risposta allimpulso del sistema ha lunghezza innita: si dice
che il sistema `e IIR = Innite Impulse Response.
Poiche S =

n=0
u[n] = , il sistema non `e stabile.
Tuttavia un sistema IIR pu` o anche essere stabile, ad esempio
h[n] = a
n
u[n]
con |a| < 1 ha S =

n=0
|a|
n
=
1
1|a|
< .
Il sistema `e inoltre causale, avendo h[n] = 0 per n < 0.
1.3.6 Equazioni lineari alle dierenze (LCCDE)
Una importante sottoclasse di sistemi LTI `e quella per cui si pu` o scrivere la
relazione ingresso-uscita anche sotto la forma, in generale non esplicita, di una
equazione alle dierenze, lineare ed a coecienti costanti, di ordine N (equazio-
ne di recursione; nel seguito, LCCDE, acronimo di Linear Constant Coecients
Dierence Equation):
N

k=0
a

k
y[n k] =
M

r=0
b

r
x[n r].
Questa in realt`a non `e una singola equazione ma un set di equazioni, una per
ogni n, in cui M e N in generale possono essere niti o no.
Un sistema che soddisfa una LCCDE `e un sistema LTI. Se i coecienti non sono
costanti non si tratta invece di un sistema LTI.
Si noti che questa equazione in letteratura viene scritta in parecchi modi, leg-
germente diversi fra loro:
1.

N
k=0
a
k
y[n k] =

M
r=0
b
r
x[n r]
con a
0
= 1 (caso precedente);
2. idem con a
0
normalizzato a 1 (v. sottosezione 1.3.8; `e con riferimento
a questultimo caso che per distinguere abbiamo usato apici (a

, b

) per i
coecienti nel primo caso);
3. y[n] =

N
k=1
a
k
y[n k] +

M
r=0
b
r
x[n r]
(a
0
normalizzato a 1 come nel caso (2) ma con coecienti a
k
cambiati di
segno rispetto al caso (2));
4.

N
k=0
a
k
y[n k] +

M
r=0
b
r
x[n r] = 0
(coecienti b
r
cambiati di segno rispetto ai casi (1) e (2));
5. ecc...
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 29
1.3.7 Esempi di equazioni lineari alle dierenze
Accumulatore: y[n] =

n
k=
x[k].
Poiche y[n 1] =

n1
k=
x[k],
y[n] = y[n 1] +x[n]
y[n] y[n 1] = x[n]
che `e una LCCDE con N = 1, M = 0, a

0
= 1, a

1
= 1, b

0
= 1.
Media mobile nel caso M
1
= 0, M
2
> 0 (sistema causale):
y[n] =
1
M
2
+1

M
2
k=0
x[n k]
che `e una LCCDE con N = 0, M = M
2
, a

0
= 1, b

k
=
1
M
2
+1
con 0 k
M
2
.
Per` o lo stesso sistema pu` o essere rappresentato anche da una LCCDE di
forma ricorsiva, cio`e con N = 0:
y[n] y[n 1] =
1
M
2
+ 1
_
M
2

k=0
x[n k]
M
2

l=0
x[n l 1]
_
=
=
1
M
2
+ 1
{x[n] +x[n 1] +. . . +x[n M
2
] x[n 1] . . . x[n M
2
1]} =
=
1
M
2
+ 1
{x[n] x[n (M
2
+ 1)]}
che `e una LCCDE con N = 1, M = M
2
+ 1, a

0
= 1, a

1
= 1, b

0
=
b

M
2
+1
=
1
M
2
+1
e b

k
= 0 altrimenti.
Questo caso illustra una propriet` a generale dei sistemi LTI:
per rappresentare la relazione ingresso-uscita di un sistema LTI si pu` o
usare un numero illimitato di LCCDE distinte; uno stesso sistema pu` o
essere posto in forma ricorsiva, oppure no.
1.3.8 Le soluzioni di una LCCDE
Abbiamo visto che per rappresentare la relazione ingresso-uscita di un sistema
LTI si pu` o usare un numero illimitato di LCCDE diverse.
Daltra parte, come nel caso delle equazioni dierenziali lineari a coecienti
costanti che si trovano nella teoria dei sistemi analogici, anche nel caso discreto
una LCCDE non identica univocamente loutput y[n], cio`e non esprime in
modo univoco la relazione ingresso-uscita di un sistema LTI.
Ci` o avviene perche data x[n], per y[n] esiste tutta una famiglia di soluzioni
della LCCDE data: per un certo input particolare x
p
[n] di cui si sia trovato il
30 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
corrispondente output y
p
[n] soddisfacente la LCCDE, ogni
y[n] = y
p
[n] +y
h
[n],
dove y
h
[n] `e una qualsiasi soluzione dellomogenea associata
N

k=0
a

k
y[n k] = 0,
soddisfer`a anchesso la LCCDE.
La y
h
[n] in generale `e poi un membro di una famiglia di soluzioni della forma
y
h
[n] =
N

m=1
A
m
z
n
m
dove gli A
m
sono N coecienti a priori indeterminati e gli z
m
sono numeri
complessi, radici (che per semplicit` a supporremo tutte distinte, cio`e semplici)
del polinomio caratteristico

N
k=0
a

k
z
nk
.
Per vedere questo si assume che la soluzione abbia forma di potenza, cio`e y
h
[n] =
z
n
, e la si sostituisce nellequazione omogenea:
N

k=0
a

k
z
nk
= 0 = z
nN
(a

0
z
N
+a

1
z
N1
+. . . +a

N1
z +a

N
).
La parte in parentesi `e proprio il polinomio caratteristico, che ha grado N e
possiede N radici in generale complesse z
m
, m = 1, N. Allora la soluzione pi` u
generale `e
y
h
[n] = A
1
z
n
1
+A
2
z
n
2
+. . . +A
N
z
n
N
con coecienti A
m
che sono poi da determinarsi mediante le condizioni iniziali
specicate per il sistema.
Questo avendo supposto che tutte le radici fossero semplici. Se vi sono radici
multiple cambia un po la forma dei termini ad esse associati in y
h
[n], ma ci
sono comunque N coecienti indeterminati.
Concludendo, possiamo aermare che una LCCDE rappresenta univocamente la
relazione ingresso-uscita di un LTI solo se supponiamo di ssare la componente
omogenea adeguatamente, imponendo un qualche vincolo, col quale le condizioni
iniziali (ausiliarie) dovranno essere consistenti.
Siccome i coecienti indeterminati sono N, avremo bisogno di N condizioni
ausiliarie: i valori di y[n] per N valori di n, per esempio y[1], y[2], . . . y[N].
Noti questi, si risolver` a un set di N equazioni lineari per ottenere gli N coe-
cienti A
m
; trovati questi si potr`a scrivere y
h
[n] e quindi loutput y[n] in modo
univoco.
In alternativa, noti i valori iniziali di y[n], quelli successivi possono essere gene-
rati univocamente per ricorrenza mediante la LCCDE, scritta ora nella forma
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 31
esplicita
y[n] =
N

k=1
a

k
a

0
y[n k] +
M

r=0
b

r
a

0
x[n r] =
N

k=1
a
k
y[n k] +
M

r=0
b
r
x[n r]
dove si `e posto
a

k
a

0
= a
k
e
b

r
a

0
= b
r
; in questa LCCDE, in generale ricorsiva, il
calcolo di y[n] coinvolge anche valori passati delloutput stesso.
Poiche siamo interessati a sistemi LTI, le condizioni ausiliarie devono essere
consistenti coi vincoli di linearit`a ed invarianza alla traslazione.
Ci` o per` o non `e un vincolo suciente per lunivocit` a della soluzione; ad esempio,
in genere vi sono sistemi LTI sia causali, sia non causali che soddisfano la stessa
LCCDE. La causalit`a, allora, `e in genere il vincolo scelto per rendere unica la
soluzione. Si parla in questo caso di condizioni iniziali di riposo: linformazione
ausiliaria `e che se x[n] = 0 per n < n
0
(e di solito si assume n
0
= 0) allora anche
y[n] = 0 per n < n
0
.
C`e un caso in cui non si ha recursione e quindi non sono richieste condizioni
ausiliarie: `e il caso N = 0 ossia y[n] =

M
k=0
b
k
x[n k] che comporta che il
sistema sia FIR:
h[n] =
M

k=0
b
k
[n k] =
_
h[n] = b
n
0 n M
h[n] = 0 altrove.
Ci` o non toglie che un FIR possa essere posto in forma ricorsiva (si ricordi le-
sempio della media mobile); analogamente un sistema IIR pu` o essere posto in
forma non ricorsiva, ma allora M pu` o divenire innito.
1.3.9 Esempio: dalla LCCDE alla risposta allimpulso
Facciamo un esempio di
uso dellequazione alle dierenze per il calcolo della risposta allimpulso
sistemi ricorsivi e non ricorsivi: uno stesso sistema LTI pu` o essere posto
in entrambe le forme.
Consideriamo un sistema ricorsivo che esiste ed `e unico: il sistema causale
y[n]
1
2
y[n 1] = x[n] (N = 1, M = 0).
Scegliamo x[n] = [n], col che y[n] = h[n]:
h[n]
1
2
h[n 1] = [n]
32 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
per ogni n; inoltre essendo il sistema scelto causale, h[n] = 0 per n < 0. In
particolare, in questo caso di N = 1 la condizione iniziale `e h[1] = 0. Ponendo
via via n = 0, 1, 2, . . . si ha
h[0]
1
2
h[1] = [0] = 1
h[1]
1
2
h[0] = [1] = 0 = h[1]
1
2
da cui h[1] =
1
2
h[2]
1
2
h[1] = [2] = 0 = h[2]
_
1
2
_
2
da cui h[2] =
_
1
2
_
2
ecc...
Si trova in generale
h[n] =
_
1
2
_
n
u[n].
Se invece prendiamo il sistema non ricorsivo
y[n] = x[n] +
1
2
x[n 1] +
_
1
2
_
2
x[n 2] +. . . +
_
1
2
_
k
x[n k] +. . .
(N = 0, M = ),
con x[n] = [n] avremo
h[n] = [n]+
1
2
[n1]+
_
1
2
_
2
[n2]+. . .+
_
1
2
_
k
[nk]+. . . =
_
_
1
2
_
n
n 0
0 n < 0
ossia ancora una volta
h[n] =
_
1
2
_
n
u[n].
Ma se la risposta allimpulso `e la stessa, i due sistemi LTI sono equivalenti (e
sono sistemi IIR).
Riassumendo:
un sistema LTI che soddisfa una LCCDE `e unico se `e causale.
Sistemi ricorsivi: almeno un a
k
= 0 con k = 0 (a
0
= 1).
Sistemi non ricorsivi: tutti gli a
k
= 0 con k = 0 (a
0
= 1).
La distinzione riguarda il modo di scrivere la relazione ingresso-uscita e
non il sistema in se; uno stesso sistema pu` o essere posto in forma ricorsiva
o non ricorsiva (ma in questo secondo caso se il sistema `e IIR M pu` o
divenire innito).
Denizioni basate sulla lunghezza di h[n]:
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 33
Sistemi FIR = sistemi non ricorsivi (N = 0) con M nito.
Per essi y[n] =

M
k=0
b
k
x[n k] =

+
k=
h[k]x[n k] da cui
h[k] =
_
b
k
0 k M
0 altrove.
Un sistema FIR ha
memoria nita;
ordine M: lordine di un sistema FIR `e pari al numero di cam-
pioni passati dellinput che esso deve memorizzare per usarli
nellequazione alle dierenze;
lunghezza nita M + 1.
Sistemi IIR = sistemi ricorsivi (N = 0, M e N niti) oppure non
ricorsivi con M che pu` o divenire innito.
Un sistema IIR ha
memoria innita: y[n] =

+
k=
h[k]x[n k];
ordine N: lordine di un sistema IIR `e pari al numero di cam-
pioni passati delloutput che esso deve memorizzare per usarli
nellequazione alle dierenze.
1.3.10 Autovalori ed autofunzioni dei sistemi LTI
I sistemi LTI presentano autovalori ed autofunzioni.
Per vederlo prendiamo una variabile complessa z = re
j
, dove r `e il modulo e
la fase (angolo in radianti), e formiamo il segnale
x[n] = z
n
= r
n
e
jn
che rappresenta una spirale nel cosiddetto piano z (Fig. 1.16) in cui `e ssato
un riferimento cartesiano con la parte reale di z in ascisse e la parte immaginaria
di z in ordinate. Mandiamo questo segnale in ingresso ad un sistema LTI: allora
luscita sar`a
y[n] = L {x[n]} =
+

k=
x[n k]h[k] =
+

k=
z
nk
h[k] = z
n
+

k=
h[k]z
k
cio`e
y[n] = z
n
H(z)
dove
H(z) =
+

k=
h[k]z
k
rappresenta lautovalore (complesso) corrispondente allautofunzione z
n
.
34 CAPITOLO 1. SEGNALI E SISTEMI A TEMPO DISCRETO
Figura 1.16: Il piano z
Dato un certo z, H(z) `e un numero complesso e lespressione scritta rappresenta
la ricetta per ottenere loutput y[n] corrispondente a x[n] = z
n
per ogni valore
del tempo discreto.
Lespressione y[n] = z
n
H(z) = x[n]H(z) ci dice che un segnale del tipo z
n
`e una
autofunzione del sistema LTI, perche luscita corrispondente `e ancora un segnale
del tipo z
n
, moltiplicato per il corrispondente autovalore H(z). Naturalmente
la relazione scritta vale se per il valore di z considerato la serie che esprime H(z)
converge.
In generale, per ogni valore di z per cui la serie converge, la funzione H(z) `e
la trasformata z di h[n] (`e un caso particolare di un tipo di trasformata che
esamineremo pi` u avanti) ed `e detta funzione di trasferimento del sistema LTI.
Ammettiamo ora che H(z) converga per valori di z a modulo unitario: z = e
j
.
Il luogo dei punti nel piano z tali che |z| = 1 `e detto cerchio unitario (Fig. 1.17).
Sul cerchio unitario, lautofunzione `e z
n
= e
jn
, ossia un esponenziale complesso
a tempo discreto con frequenza angolare .
Allora i valori della funzione di trasferimento H(z) sul cerchio unitario, indicati
come H(e
j
), costituiscono la risposta in frequenza del sistema LTI:
H(e
j
) =
+

k=
h[k]e
jk
e H(e
j
), trasformata z di h[n] sul cerchio unitario, rappresenta la trasformata
di Fourier a tempo discreto (DTFT = Discrete Time Fourier Transform) di h[n]
(un caso particolare di unaltra trasformata esaminata in seguito).
Per una data , H(e
j
) `e un numero complesso che descrive la variazione in
ampiezza e fase di un segnale esponenziale complesso a frequenza , quando `e
1.3. SISTEMI LINEARI INVARIANTI NEL TEMPO (LTI) 35
elaborato da un sistema LTI.
Figura 1.17: Il cerchio unitario
Capitolo 2
Trasformate di segnali a
tempo discreto
2.1 Trasformata z
La trasformata z svolge in campo discreto il ruolo che la trasformata di Laplace
ha in campo continuo: quello di permettere di rimpiazzare operazioni su segnali
reali con operazioni su funzioni complesse; `e uno strumento molto convenienete
perche consente di utilizzare il notevole bagaglio di teoremi della teoria delle
funzioni di variabile complessa nella soluzione di problemi di elaborazione dei
segnali a tempo discreto.
Per una generica sequenza x[n], la trasformata z `e denita come
X(z) =
+

n=
x[n]z
n
ed esiste per tutti i valori di z = re
j
per cui la serie converge.
La X(z) `e una serie di Laurent che converge in una corona circolare D tale che
R

< |z| < R


+
ed ivi rappresenta una funzione analitica, ossia una funzione continua di z do-
tata di derivate di ogni ordine, anchesse funzioni continue di z nella regione di
convergenza D (spesso indicata con lacronimo ROC = Region of Convergence).
Il raggio inferiore R

pu` o anche andare a zero, ed il raggio superiore R


+
pu` o
andare ad innito. Esempi di ROC diverse sono riportati in Fig. 2.1.
Sequenze diverse possono avere la stessa X(z) con D diverse: specicando X(z)
occorre specicare anche D anch`e x[n] resti univocamente determinata.
36
2.1. TRASFORMATA Z 37
Figura 2.1: Esempi di regioni di convergenza della trasformata z
Esprimendo z in coordinate polari, la denizione di trasformata z diviene
X(z) = X(re
j
) =
+

n=
x[n](re
j
)
n
=
+

n=
x[n]r
n
e
jn
e si dimostra che tale serie converge in modo uniforme se x[n]r
n
`e assoluta-
mente sommabile:
+

n=
|x[n]r
n
| < .
Quindi la condizione di convergenza dipende solo da r, il che spiega perche la
ROC sia anulare centrata nellorigine nel piano z.
Si noti che:
la denizione di X(z) comporta periodicit` a rispetto a con periodo 2
la condizione di convergenza implica energia nita per x[n]r
n
x
r
[n],
visto che
E =
+

n=
|x
r
[n]|
2

_
+

n=
|x
r
[n]|
_
2
.
La determinazione della ROC in sostanza `e riconducibile allo studio di come
x[n] 0 per n + e n .
Ad esempio, se assumiamo che |x[n]| M

R
n

per n > 0 e |x[n]| M


+
R
n
+
per
n < 0 (valore assoluto di x[n] limitato allinnito da andamenti di potenza) e
R
+
> R

, allora c`e convergenza assoluta in R

< |z| < R


+
.
Per sequenze con |x[n]| < , esaminiamo ora dei casi particolari.
38 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Sequenze periodiche, x[n] = x[n + N] (n (, +): la trasformata z
non esiste.
Sequenze monolatere destre, x[n] = 0 per n < n
0
con n
0
intero nito, per
cui X(z) =

+
n=n
0
x[n]z
n
: D `e lesterno di un cerchio di raggio R

; se
n
0
0 la sequenza `e causale e si ha convergenza in z = ; se n
0
< 0 non
si ha convergenza in z = .
Ad esempio, con n
0
= 0 la sequenza `e causale, x[n] = 0 per n < 0; allora
R
n
+
= 0 con n negativo, quindi R
+
.
Sequenze monolatere sinistre, x[n] = 0 per n > n
0
: per esse X(z) =

n
0
n=
x[n]z
n
=

n=n
0
x[n]z
n
. Perci`o D `e linterno di un cerchio
di raggio R
+
, con leccezione di z = 0 se n
0
> 0.
Ad esempio, con n
0
= 0, x[n] = 0 per n > 0; allora R
n

= 0 con n positivo,
quindi R

0.
Sequenze bilatere: `e il caso generale in cui X(z) =

+
n=
x[n]z
n
=

1
n=
x[n]z
n
+

+
n=0
x[n]z
n
di cui il primo addendo rappresenta una
sequenza monolatera sinistra con n
0
= 1 ed il secondo una sequenza
monolatera destra con n
0
= 0. Come illustrato nella Fig. 2.2, la prima
converge per |z| < R
+
incluso z = 0 (pannello a), la seconda converge
per |z| > R

incluso z = (pannello b). Se R


+
> R

, ci`o signica
convergenza in R

< |z| < R


+
.
Sequenze di lunghezza nita, x[n] = 0 per n < n
1
e n > n
2
con n
1
, n
2
interi niti: per esse X(z) =

n
2
n=n
1
x[n]z
n
e quindi R
+
, R

0.
Pertanto z pu` o assumere tutti i valori ad eccezione di z = 0 se n
2
> 0
e di z = se n
1
< 0: si ha convergenza almeno in 0 < |z| < , pi` u,
eventualmente, z = 0 oppure z = .
Figura 2.2: a) Regione di convergenza per una sequenza monolatera destra e b)
regione di convergenza per una sequenza monolatera sinistra
2.1. TRASFORMATA Z 39
2.1.1 Esempi di Trasformate z
La trasformata z di [n] `e 1:
+

n=
[n]z
n
= [0]z
0
= 1
per qualsiasi z.
Consideriamo la sequenza
x[n] =
_
a
n
n 0
0 n < 0
con a = costante: una sequenza causale scrivibile anche come
x[n] = a
n
u[n].
La trasformata z `e
X(z) =
+

n=0
a
n
z
n
=
=
+

n=0
(az
1
)
n
=
=
1
1 az
1
=
z
z a
con la condizione di convergenza |az
1
| < 1 ossia |z| > |a|, da cui dedu-
ciamo R

= |a|, R
+
= .
Consideriamo la sequenza
x[n] =
_
a
n
n < 0
0 n 0
con a = costante: una sequenza non causale scrivibile anche come
x[n] = a
n
u[n 1].
La trasformata z `e
X(z) =
+

n=
a
n
u[n 1]z
n
=
=
1

n=
(az
1
)
n
=
+

n=1
(za
1
)
n
=
= 1
+

n=0
(za
1
)
n
= 1
1
1 za
1
=
a z a
a z
=
z
z a
.
La trasformata `e la stessa del caso precedente ma la ROC `e diversa
(Fig. 2.3): infatti la condizione di convergenza `e |za
1
| < 1 ossia |z| < |a|,
da cui deduciamo R

= 0, R
+
= |a|.
Pur con la stessa trasformata, le due ROC diverse conducono a sequenza
diverse, di cui una sola causale.
40 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.3: a) Regione di convergenza per la sequenza monolatera causale e
b) regione di convergenza per la sequenza monolatera non causale dellesempio
riportato nel testo
2.1.2 Trasformate z razionali
La trasformata z `e particolarmente utile quando la somma di inniti termini
che la denisce pu` o essere espressa in forma chiusa, cio`e sommata ottenendo
una formula matematica semplice.
La maggior parte delle trasformate z che si incontrano nella pratica sono funzioni
razionali, cio`e rapporti di polinomi: ogni segnale esprimibile come combinazione
lineare di termini del tipo a
n
con base in generale complessa ha una trasformata
z razionale.
Non solo le trasformate z di vari segnali importanti, ma anche le funzioni di
trasferimento dei sistemi LTI a tempo discreto descritti da LCCDE sono funzioni
razionali.
Le trasformate z razionali sono determinate, a meno di una costante moltipli-
cativa, dai loro zeri (radici del polinomio numeratore) e dai loro poli (radici del
polinomio denominatore).
Si ricordi che un polinomio P(z) di grado p ha esattamente p radici, incluse le
molteplicit` a (alcune radici possono infatti essere coincidenti). Le radici sono in
generale complesse ma, se i coecienti del polinomio sono reali, esse appaiono
in coppie complesso-coniugate: se `e una radice di molteplicit` a n, anche

lo
`e.
Per le trasformate z razionali la regione di convergenza `e legata alla posizione
dei poli, nel senso che la ROC non dovr`a contenere poli al suo interno.
La Fig. 2.4 mostra un esempio di schema di poli e zeri nel contesto del cerchio
2.1. TRASFORMATA Z 41
unitario.
Figura 2.4: Esempio di schema di poli e zeri e cerchio unitario
Quali sono le ROC possibili in questo caso?
Dato un certo schema di poli e zeri di una H(z) razionale, come in Fig. 2.4,
possono esserci varie scelte possibili per la ROC, ciascuna associata ad una
diversa sequenza, come illustrato in Fig. 2.5.
Naturalmente la causalit`a costituir` a un vincolo in grado di rendere unica la
soluzione: solo la sequenza monolatera destra sar`a causale.
2.1.3 Inversione della Trasformata z
Data una X(z) con la sua ROC D, come si risale alla sequenza x[n]?
Dal teorema integrale di Cauchy
x[n] =
1
2j
_
C
X(z)z
n1
dz
dove C `e un percorso antiorario chiuso situato entro D e circondante lorigine
del piano z.
Questo integrale in teoria pu` o essere valutato col teorema di Cauchy dei residui.
Se si limita lattenzione al caso di interesse pratico in cui la serie che denisce
X(z) assomma ad una funzione razionale, esprimibile come un rapporto di poli-
nomi (e quindi, come si `e visto, dotata di un numero nito di poli e zeri), si pu` o
adottare una tecnica di espansione in fratti semplici, avente lo scopo di espri-
mere X(z) come una combinazione lineare di termini pi` u facilmente invertibili,
in particolare termini semplici di cui sia nota la trasformata inversa.
42 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.5: Regioni di convergenza associate ai poli e zeri mostrati in Fig. 2.4:
a) sequenza monolatera destra, b) sequenza monolatera sinistra, c) sequenza
bilatera, d) sequenza bilatera (diversa dalla precedente e lunica che ammette
Trasformata di Fourier DTFT)
Non ci soermiamo sullargomento; notiamo solo che una trasformata z razionale
pu` o essere data sia sotto forma di rapporto di polinomi in z, sia come rapporto
di polinomi in z
1
, e una forma pu` o essere pi` u conveniente delllaltra ai ni
dellinversione.
Per le sequenze causali, che contengono nella somma di denizione di X(z)
solo potenze negative di z:

+
n=0
x[n]z
n
, la forma in z
1
`e particolarmente
conveniente.
Un caso particolare in cui linversione `e semplicissima `e quello in cui X(z) `e
data come serie di potenze in z
1
con relativa ROC, perche allora `e possibile
uninversione diretta:
+

n=
x[n]z
n
=
+

n=
c
n
z
n
che porta a x[n] c
n
.
`
E talvolta utile espandere una X(z) data in forma chiusa in serie di potenze di
z
1
, cos` da poter eettuare linversione diretta.
Ad esempio, si consideri la trasformata z non razionale X(z) = log(1 + az
1
)
2.1. TRASFORMATA Z 43
con |z| > |a|.
Usando lo sviluppo in serie per log(1 +) valido per || < 1 si ottiene
X(z) =
+

n=1
(1)
n+1
a
n
z
n
n
=
+

n=
x[n]z
n
che porta a concludere, per confronto diretto,
x[n] =
_
(1)
n+1 a
n
n
n 1
0 n 0.
2.1.4 Trasformata z convergente sul cerchio unitario
Quando la trasformata z converge sul cerchio unitario C caratterizzato da |z| =
r = 1, z = e
j
(Fig. 2.6), X(z) su C diviene la Trasformata di Fourier a tempo
discreto (DTFT) di x[n]:
X(e
j
) =
+

n=
x[n]e
jn
.
Si noti che:
Figura 2.6: Il cerchio unitario C
la x[n] `e una sequenza ossia una funzione del tempo discreto mentre la
trasformata `e una funzione continua della variabile .
X(e
j
) `e periodica con periodo 2:
X[e
j(+2k)
] =
+

n=
x[n]e
j(+2k)n
=
+

n=
x[n]e
jn
e
j2kn
= X(e
j
)
44 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
in quanto e
j2kn
= 1.
X(e
j
) =

+
n=
x[n]e
jn
pu` o intendersi come lo sviluppo in serie di
Fourier della funzione continua X(e
j
), periodica nella variabile continua
.
Far variare da a +corrisponde a percorrere innite volte il cerchio
unitario (wrapping dellasse ).
e
jn
e e
j(+2k)n
sono indistinguibili, quindi `e ovvio che X(e
j
) debba
essere la stessa alle due frequenze; ad esempio, se si tratta della H(e
j
) di
un sistema LTI, esso reagir`a ugualmente a due frequenze indistinguibili.
Quando x[n] deriva da una x(t) analogica per campionamento a passo
costante T
c
, possiamo legare le variabili frequenziali del tempo discreto (
e ) a quelle del tempo continuo (f [Hz] e [rad/s]): f =

2
=

2T
c
=

T
c
.
Il periodo di X(e
j
) `e 2 in , 1 in ,
1
T
c
in f,
2
T
c
in .
2.1.5 Propriet`a della Trasformata z
Nota: qui e nel seguito indichiamo loperazione di trasformata, che `e una ope-
razione reversibile, col simbolo simmetrico ; il contesto di volta in volta
chiarisce di quale trasformata si tratti. Pertanto in questa sezione, ad esempio,
signica il termine di destra `e la trasformata z del termine di sinistra e
quello di sinistra `e lantitrasformata z del termine di destra, ecc...
1. Linearit` a: date a e b costanti arbitrarie,
ax
1
[n] +bx
2
[n] aX
1
(z) +bX
2
(z)
e la regione di convergenza `e al minimo lintersezione delle regioni di
convergenza di X
1
(z) e di X
2
(z) (se la combinazione lineare `e tale da
introdurre zeri che cancellino dei poli, la regione pu` o essere pi` u estesa).
2. Ritardo o traslazione: se y[n] = x[n m], allora Y (z) = z
m
X(z).
X(z) e Y (z) hanno la stessa regione di convergenza, salvo che per z = 0 e
z = . Infatti per m > 0 vengono introdotti dei poli nellorigine e degli
zeri allinnito; viceversa per m < 0.
3. Moltiplicazione per una sequenza del tipo a
n
: dato a in generale complesso,
a
n
x[n] X(z/a)
con regione di convergenza |a|R
x
< |z| < |a|R
x+
, dove R
x
e R
x+
delimitano la regione di convergenza di X(z).
Le posizioni di poli e zeri vengono modicate di un fattore a:
a reale (diverso da zero): compressione o espansione del piano z;
a complesso, |a| = 1: rotazione del piano z.
2.1. TRASFORMATA Z 45
4. Derivazione:
nx[n] z
dX(z)
dz
in R
x
< |z| < R
x+
, eccetto la possibile cancellazione o aggiunta dello
zero e dellinnito.
5. Complesso-coniugazione:
x

[n] X

(z

)
in R
x
< |z| < R
x+
.
6. Folding o rovesciamento temporale:
x[n] X(1/z)
in 1/R
x+
< |z| < 1/R
x
.
7. Parte reale e parte immaginaria di una sequenza complessa :
{x[n]}
1
2
[X(z) +X

(z

)]
{x[n]}
1
2j
[X(z) X

(z

)]
al minimo in R
x
< |z| < R
x+
.
8. Convoluzione (propriet` a importantissima per la teoria dei sistemi LTI):
y[n] = x
1
[n] x
2
[x] Y (z) = X
1
(z)X
2
(z)
al minimo nellintersezione delle regioni di convergenza di X
1
(z) e X
2
(z).
Se un polo di X
1
(z) (o di X
2
(z)) `e cancellato da uno zero di X
2
(z) (o di
X
1
(z)), la regione di convergenza di Y (z) pu` o essere pi` u estesa.
9. Teorema del valore iniziale: se x[n] `e causale, x[0] = lim
z
X(z).
10. Teorema del valore nale: se X(z) esiste per |z| > r e r < 1 (convergenza
anche sul cerchio unitario) allora x[n] 0 per n .
Se X(z) `e razionale ed `e la trasformata z di una sequenza x[n] causale (il
che signica che X(z) converge allesterno di un cerchio contenente tutti
i suoi poli, che sono in numero nito) questa relazione `e vericata se tutti
i poli sono interni al cerchio unitario.
11. Teorema della convoluzione complessa: la trasformata z di un prodotto di
sequenze ha una forma del tipo integrale di convoluzione (tenuto conto
che le trasformate z sono funzioni periodiche di con periodo 2). In
formule, data w[n] = x[n]y[n], si trova
w[n] = x[n]y[n] W(z) =
1
2j
_
C
X(z/v)Y (v)v
1
dv
46 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
dove il percorso C, antiorario, deve essere scelto entro lintersezione delle
regioni di convergenza di X(z/v) e Y (v); oppure, in alternativa,
w[n] = x[n]y[n] W(z) =
1
2j
_
C

X(v)Y (z/v)v
1
dv
dove il percorso C

, antiorario, deve essere scelto entro lintersezione delle


regioni di convergenza di X(v) e Y (z/v).
Scegliendo come percorso una circonferenza ed esprimendo le variabili in
forma polare, z = re
j
, v = e
j
, si trova
W(re
j
) =
1
2
_
+

X(e
j
)Y
__
r

_
e
j()
_
d
che rappresenta la convoluzione di X(re
j
) e Y (re
j
) come funzioni di ,
a parte i limiti di integrazione niti. Si tratta in realt`a di una integrazione
su un periodo di X(z) e Y (z), che viene detta convoluzione periodica di
X(z) con Y (z), convergente al minimo in R
x
R
y
< |z| < R
x+
R
y+
.
12. Relazione di Parseval per la Trasformata z:
+

n=
x[n]y

[n] =
1
2j
_
C
X(v)Y

(1/v

)v
1
dv
dove il percorso C va scelto nellintersezione delle regioni di convergen-
za di X(v) e di Y

(1/v

). Questa propriet` a discende dal teorema della


convoluzione complessa applicato a w[n] = x[n]y

[n].
Nel caso x[n] = y[n] la relazione esprime lenergia di x[n]:
+

n=
|x[n]|
2
=
1
2j
_
C
X(v)X

(1/v

)v
1
dv.
Inne sul cerchio unitario (ammesso che su di esso vi sia convergenza) tale
relazione diviene
+

n=
|x[n]|
2
=
1
2
_
+

|X(e
j
)|
2
d,
che `e la relazione di Parseval per la DTFT di x[n].
Questultima `e una relazione importante, molto utile nel seguito.
2.1.6 Funzione di trasferimento di un sistema LTI
Un sistema LTI che soddis ad una LCCDE di ordine nito ha una funzione di
trasferimento H(z) razionale, data da un rapporto di polinomi in z
1
.
Prendiamo infatti
y[n] +a
1
y[n 1] +. . . +a
N
y[n N] = b
0
x[n] +b
1
x[n 1] +. . . +b
M
x[n M]
2.1. TRASFORMATA Z 47
e trasformiamo ricordando la propriet` a del ritardo:
Y (z)+a
1
Y (z)z
1
+. . .+a
N
Y (z)z
N
= b
0
X(z)+b
1
X(z)z
1
+. . .+b
M
X(z)z
M
da cui
Y (z)/X(z) =
b
0
+b
1
z
1
+. . . +b
M
z
M
1 +a
1
z
1
+. . . +a
N
z
N
=

M
r=0
b
r
z
r

N
k=0
a
k
z
k
=
b(z)
a(z)
.
Ma per la propriet` a di convoluzione della trasformata z,
y[n] = x[n] h[n] Y (z) = X(z)H(z),
quindi
H(z) = Y (z)/X(z);
in conclusione,
H(z) =
b
0
+b
1
z
1
+. . . +b
M
z
M
1 +a
1
z
1
+. . . +a
N
z
N
.
La corrispondente h[n] ha, in generale, durata innita.
Riassumendo:
H(z) `e la trasformata z di h[n];
H(z) `e lautovalore del sistema LTI, corrispondente allautofunzione z
n
;
H(z) `e il rapporto tra la trasformata delluscita del sistema LTI e quella
dellingresso, per un qualsiasi input x[n].
Commentiamo ancora questultima relazione, H(z) = Y (z)/X(z).
Per derivarla dallequazione alle dierenze abbiamo assunto soltanto
che il sistema fosse LTI
che X(z) e Y (z) avessero ROC almeno in parte sovrapposte, per la con-
vergenza di H(z).
Non abbiamo assunto che il sistema LTI fosse stabile e/o causale: in corrispon-
denza di ci`o, dallequazione alle dierenze otteniamo H(z) ma non la sua ROC
e quindi non viene univocamente determinata la sequenza h[n].
Ci` o `e consistente col fatto che una LCCDE non identica univocamente la rela-
zione ingresso-uscita di un LTI se non in associazione con opportune condizioni
al contorno.
Pertanto, data una LCCDE, possono esserci per H(z) scelte diverse per la ROC,
soddisfacenti il vincolo che si tratti di un anello delimitato da poli ma privo
48 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
di poli al suo interno, ed ognuna condurr` a ad una diversa h[n]. Se per`o si
assume il vincolo di causalit`a, h[n] deve essere monolatera destra, quindi la
ROC deve estendersi allesterno del polo pi` u esterno. Se si assume il vincolo di
stabilit` a, la ROC deve includere il cerchio unitario. Le due richieste non sono
necessariamente compatibili: lo sono solo se tutti i poli di H(z) sono interni al
cerchio unitario.
2.1.7 Sequenza di uscita di un sistema LTI
Data la funzione di trasferimento di un sistema LTI, H(z), con la sua ROC, e
considerata una sequenza di ingresso x[n], possiamo seguire, in linea di principio,
diverse vie per ricavare la sequenza di uscita y[n].
1. Dominio del tempo discreto
Convoluzione: si inverte H(z) per ottenere h[n] e poi si calcola
y[n] = x[n] h[n].
Equazione alle dierenze: dallespressione di H(z) si deducono i valori
dei coecienti della LCCDE e da questa ricorsivamente si costruisce
y[n].
2. Dominio delle trasformate
Si trasforma x[n], ottenendo X(z). Si forma poi Y (z) = H(z)X(z) e
da questultima antitrasformando si ottiene y[n].
Si noti per` o che mentre un sistema FIR `e facilmente attuabile per via diretta
nel dominio del tempo tramite la convoluzione, che in quel caso implica solo
addizioni, moltiplicazioni e luso di un numero nito di locazioni di memoria,
per un sistema IIR ci`o `e impossibile. Si ricorrer` a dunque allequazione alle
dierenze (ricorsiva).
2.1.8 Strutture per la realizzazione di sistemi LTI
La relazione ingresso - uscita di un sistema LTI che obbedisca ad una LCCDE
e quindi abbia una H(z) razionale (e che per lunicit` a supporremo causale) `e
esprimibile come un algoritmo di calcolo che combini tra loro solo tre operazioni
fondamentali: addizione, ritardo e moltiplicazione per una costante. Tale algo-
ritmo denisce la struttura interna del sistema, che viene rappresentata come un
diagramma a blocchi consistente di interconnessioni di sommatori, ritardatori
di k passi temporali e moltiplicatori.
I simboli delle tre operazioni sono mostrati in Fig. 2.7. In particolare, i ritarda-
tori ed i moltiplicatori sono essi stessi dei sistemi LTI elementari e per essi nel
2.1. TRASFORMATA Z 49
Figura 2.7: Simboli dei sommatori, dei ritardatori e dei sommatori
simbolo geometrico (rettangolo, triangolo) sono inscritte le rispettive funzioni
di trasferimento.
La funzione di trasferimento del moltiplicatore di un fattore a `e H(z) = a.
Infatti se y[n] = ax[n], posto x[n] = z
n
si ha y[n] = z
n
H(z) = ax[n] = az
n
, da
cui appunto H(z) = a.
La funzione di trasferimento del ritardatore di k passi temporali `e H(z) = z
k
.
Infatti se y[n] = x[n k], posto x[n] = z
n
si ha y[n] = z
n
H(z) = x[n k] =
z
nk
= z
n
z
k
, da cui appunto H(z) = z
k
.
Per rappresentare con un diagramma a blocchi la pi` u generale LCCDE
y[n] =
N

k=1
a
k
y[n k] +
M

k=0
b
k
x[n k]
si introduce la sequenza ausiliaria v[n] =

M
k=0
b
k
x[n k], con cui si scrive
y[n] =
N

k=1
a
k
y[n k] +v[n].
Ne risulta il diagramma mostrato in Fig. 2.8 e detto forma diretta I.
Questo diagramma di base pu` o poi essere modicato in una variet`a di modi, sen-
za cambiare la H(z). Ciascun riarrangiamento rappresenta un diverso algoritmo
computazionale per attuare lo stesso sistema.
Ad esempio, il precedente diagramma pu` o essere visto come cascata di due
sistemi: uno che ha come input x[n] e come output v[n], laltro che ha come
50 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.8: Forma diretta di tipo I
input v[n] e come output y[n]. Essendo entrambi sistemi LTI, lordine in cui si
considerano pu` o essere invertito, per cui lo schema pu` o diventare quello mostrato
nella Fig. 2.9, dove per semplicit` a graca si `e posto M = N (cosa non restrittiva
perche nel caso in cui sia M = N, alcuni coecienti semplicemente saranno
nulli). Il segnale w[n] nelle due catene centrali in Fig. 2.9 `e lo stesso, per cui
si possono collassare le due catene in una sola: si ottiene cos` un diagramma
(forma diretta II, Fig. 2.10) che ha il minimo numero di ritardi possibilie, che `e
pari a max(N, M). Una attuazione col numero minimo di ritardi `e detta anche
in forma canonica.
Altri riarrangiamenti possono ottenersi impiegando sottosistemi di ordine in-
feriore in cascata o in parallelo. Tutte queste diverse forme corrispondono a
trasformazioni lineari delle variabili nel set di equazioni che la LCCDE rappre-
senta; poiche si tratta di equazioni lineari, tali trasformazioni conducono a set
equivalenti.
`
E possibile un numero illimitato di trasformazioni!
Ognuna rappresenta una diversa struttura secondo la quale il sistema LTI pu` o
eettivamente essere realizzato in software.
Si pu` o mostrare che ogni realizzazione di un sistema IIR deve essere ricorsiva se
si vuole avere, nella struttura, un numero nito di ritardi.
2.1. TRASFORMATA Z 51
Figura 2.9: Una possibile forma in cui pu` o trasformarsi il diagramma precedente
Figura 2.10: Forma diretta di tipo II o forma diretta canonica
52 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Nel caso di sistemi FIR,
y[n] =
M

k=0
b
k
x[n k] =
M

k=0
h[k]x[n k]
e le due forme dirette si riducono allo schema mostrato in Fig. 2.11. In al-
Figura 2.11: Forma cui si riducono le due forme dirette nel caso FIR
ternativa si possono avere forme in cui si mettono in cascata sezioni di ordine
2.
Se poi la H(e
j
) del sistema considerato ha fase lineare (una caratteristica de-
nita pi` u avanti), ci`o comporta, come vedremo, particolari simmetrie dei coef-
cienti h[n], col risultato che il numero di moltiplicatori pu` o essenzialmente
dimezzarsi.
Lo studio delle strutture per la realizzazione di sistemi LTI `e di interesse perche
strutture a priori equivalenti, per ci`o che concerne la relazione ingresso-uscita,
quando i coecienti e le variabili sono idealmente a precisione innita (caso
teorico), possono avere prestazioni molto diverse quando la precisione `e limitata,
come accade nelle attuazioni in software.
Infatti strutture diverse signicano algoritmi software diversi, e quindi eetti
diversi conseguenti alla rappresentazione con precisione nita dei coecienti
h[n] ed al troncamento e/o arrotondamento nei calcoli intermedi.
Tali eetti rivestono tuttavia meno importanza per i sistemi FIR di quanto non
succeda per i sistemi IIR, e poiche ci occuperemo quasi esclusivamente di sistemi
FIR, ne tralasciamo lo studio.
2.1.9 Poli e zeri di H(z): forme alternative per H(z) razio-
nali
Confrontando la condizione di stabilit` a di un sistema LTI,
k=+

k=
|h[k]| < ,
2.1. TRASFORMATA Z 53
con quella che denisce la regione di convergenza di H(z),
k=+

k=
|h[k]||z
k
| < ,
vediamo che se la regione di convergenza di H(z) comprende il cerchio unitario
(|z| = 1), il sistema `e stabile e vicersa.
Per un sistema causale e stabile la regione di convergenza comprende il cerchio
unitario e tutto il piano z esterno a questultimo, incluso z = ; tutti i poli
di H(z) stanno entro il cerchio unitario, h[n] 0 per n (teorema del
valore nale) e la H(z) sul cerchio unitario, H(z)|
z=e
j = H(e
j
) `e la risposta
in frequenza del sistema.
Gli zeri di H(z) invece possono essere ovunque.
Si dimostra che una
H(z) =

M
r=0
b
r
z
r

N
k=0
a
k
z
k
pu` o, ammesso che sia a
0
, b
0
= 0, essere fattorizzata come
H(z) = A

M
r=1
(1 w
r
z
1
)

N
k=1
(1 p
k
z
1
)
dove il fattore di scala A vale b
0
/a
0
. Ma poiche abbiamo posto a
0
= 1,
A = b
0
.
In questa espressione, al numeratore ciascun fattore d`a uno zero in z = w
r
ed un polo in z = 0, a denominatore ciascun fattore d`a un polo in z = p
k
ed uno zero in z = 0.
Se b
0
= b
1
= . . . = b
M
1
= 0 si ha invece
H(z) = Bz
(M
1
+1)

M(M
1
+1)
r=1
(1 w
r
z
1
)

N
k=1
(1 p
k
z
1
)
dove il fattore di scala B vale b
M
1
+1
/a
0
.
Oltre a quella citata, `e possibile unaltra forma di fattorizzazione, che si
ottiene esprimendo innanzi tutto H(z) come rapporto di polinomi in z,
anzich`e in z
1
(cosa sempre possibile). Ci` o si realizza come segue.
Sia b
Mr
il primo coeciente del numeratore b(z) di H(z), non nullo
(r M; per esempio r = M se b
0
= 0). Allora, con a
0
= 1,
H(z) =
_

_
z
NM
(b
Mr
z
r
+...+b
M
)
z
N
+a
1
z
N1
+...+a
N
N M, N M 0,
b
Mr
z
r
+...+b
M
z
MN
(z
N
+a
1
z
N1
+...+a
N
)
N < M, M N > 0.
Nel primo caso, il grado del numeratore `e N M + r con r M, quindi
il grado del numeratore `e N. Il grado del denominatore invece `e N.
54 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Nel secondo caso, il grado del numeratore `e r M e quello del deno-
minatore `e M (si noti che lesponente M N a denominatore `e non
negativo).
Pertanto in entrambi i casi il grado del numeratore non supera quello del
denominatore (frazione propria), come si addice ad un sistema causale
(si ricordi che potenze positive di z sono associate ad anticipi, mentre
potenze negative sono associate a ritardi del segnale).
Se r = M (b
0
= 0) i gradi del numeratore e del denominatore sono uguali
(frazione esattamente propria), nel qual caso y[n] dipende non solo dai
valori passati dellingresso ma anche dal valore contemporaneo x[n]; se
b
0
= 0 la y[n] dipende solo dai valori passati dellinput ed il numeratore `e
di grado inferiore al numeratore (frazione strettamente propria).
Lespressione precedente viene poi opportunamente fattorizzata; ad esem-
pio, se b
0
= 0, r = M, si pu` o scrivere H(z) come
H(z) = b
0
z
NM
z
M
+ (b
1
/b
0
)z
M1
+. . . + (b
M
/b
0
)
z
N
+a
1
z
N1
+. . . +a
N
e quindi
H(z) = b
0
z
NM
(z w
1
)(z w
2
) +. . . + (z w
M
)
(z p
1
)(z p
2
) +. . . + (z p
N
)
.
In questa espressione, lesponente N M pu` o avere segno positivo o
negativo o anche essere nullo.
Il fattore b
0
viene spesso scritto come G (guadagno o gain): G = b
0
/a
0
=
b
0
per a
0
= 1.
Questa forma di H(z) viene detta forma fattorizzata o forma zero-pole-
gain.
Si ricordi che se i coecienti sono reali, le radici w
k
e p
k
dei polinomi
numeratore e denominatore appaiono in coppie complesso-coniugate.
Dalla forma zero-pole-gain si vede che nel piano z, a z = 0 e z = , H(z)
ha M zeri e N poli, pi` u |N M| zeri (se N M) o poli (se N < M)
nellorigine.
Pertanto al nito H(z) ha tanti zeri quanti sono i poli.
Ci` o permette di riscriverla come
H(z) = b
0
(z w
1
)(z w
2
) +. . . + (z w
L
)
(z p
1
)(z p
2
) +. . . + (z p
L
)
, L = max(N, M)
in cui alcuni w
k
e p
k
potranno essere nulli.
Si osservi inoltre che, naturalmente, ogni polo in z = 0 d`a uno zero a
z = ed ogni zero a z = 0 d`a un polo a z = .
Abbiamo cos` lo schema presentato nella Tabella 2.1, dove TOT indica
il numero totale di poli o zeri, esclusi quelli eventualmente presenti al-
linnito. Il numero di questi ultimi `e riportato in parentesi quadre, in
2
.
1
.
T
R
A
S
F
O
R
M
A
T
A
Z
5
5
N M N < M
z nito = 0 z = 0 [z = ] TOT z = 0 [z = ] TOT
ZERI M N M N [M N] M
POLI N [N M] N M N M
Tabella 2.1: Numero di poli e zeri di H(z)
56 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
quanto come detto non rientra nel computo totale. Se non vi `e alcuna
radice in comune fra numeratore e denominatore, si dice che H(z) `e in
forma minima e il sistema non pu` o essere descritto da una LCCDE con N
e M minori.
Dalla discussione fatta si comprende che a meno di un fattore di scala,
H(z) `e descritta da un diagramma di poli e zeri.
I sistemi FIR hanno N = 0 e presentano soltanto M zeri, oltre ad un polo
multiplo nellorigine.
Inne, unaltra forma talvolta usata per una H(z) razionale `e quella in cui
essa viene scomposta in fratti semplici (partial fraction decomposition).
Ad esempio, questo pu` o essere il punto di partenza se si desidera invertire
una H(z) razionale.
In questo caso supponiamo di partire da un rapporto di polinomi in z
1
in cui il numeratore `e di grado M inferiore al grado N del denominatore.
Se cos` non fosse, e fosse invece M N, si pu` o comunque riscrivere la
trasformata come
H(z) = c
0
+c
1
z
1
+. . . +c
MN
z
(MN)
+. . .
. . . +
d
0
+d
1
z
1
+. . . +d
N1
z
(N1)
1 +a
1
z
1
+. . . +a
N1
z
N
=
= c(z) +
d(z)
a(z)
.
I coecienti dei nuovi polinomi c(z) e d(z) possono essere ottenuti ugua-
gliando i coecienti delle potenze di z
1
in c(z)a(z) +d(z) = b(z) e risol-
vendo il sistema ottenuto: si dimostra che vi `e sempre ununica soluzione.
La parte c(z), posto che sia presente, pu` o essere invertita direttamente; il
termine residuo viene scritto (supponiamo per semplicit` a che non vi siano
poli multipli) come
d(z)
a(z)
=
d
0
+d
1
z
1
+. . . +d
N1
z
(N1)

N
i=1
(1 p
i
z
1
)
=
N

k=1
A
k
1 p
k
z
1
dove i p
k
sono gli zeri di a(z), cio`e i poli di H(z), e gli A
k
, detti residui
di d(z)/a(z) nei poli, si trovano moltiplicando via via la relazione data per
ciascuno dei termini 1 p
k
z
1
e poi sostituendo z = p
k
: si ottiene cos`
A
k
=
d
0
p
N1
k
+d
1
p
N2
k
+. . . +d
N1

i=k
(p
k
p
i
)
in cui i fattori del denominatore sono sicuramente tutti non nulli, avendo
supposto di avere solo poli semplici.
La formula pu` o essere generalizzata al caso di poli multipli, anche se nella
pratica tali casi sono assai rari; se r `e un polo di molteplicit` a s
r
, si hanno
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 57
termini del tipo
A
j
1 p
j
z
1
+
A
j+1
(1 p
j
z
1
)
2
+. . . +
A
j+s
r
1
(1 p
j
z
1
)
s
r
.
Riassumendo, la scomposizione in fratti semplici di H(z) `e
H(z) = c
0
+c
1
z
1
+. . . +c
MN
z
(MN)
+
N

k=1
A
k
1 p
k
z
1
nel caso di soli poli semplici.
Sotto la forma cos` ottenuta, H(z) `e immediatamente invertibile, perche
le antitrasformate dei termini in gioco sono note; si ha
h[n] =
MN

i=0
c
i
[n i] +
N

k=1
A
k
p
n
k
con n 0.
2.1.10 Sistema inverso
Dato un sistema LTI con funzione di trasferimento H(z), il sistema inverso `e
H
i
(z) tale che
G(z) = H(z)H
i
(z) = 1
da cui
H
i
(z) =
1
H(z)
.
Se x[n] e y[n] sono rispettivamente linput e loutput del sistema H(z), allora
H
i
(z), con y[n] come input, restituir` a x[n] come output.
Se H(z) `e stabile, H
i
(z) non lo `e necessariamente: poiche i poli di H
i
(z) sono
evidentemente gli zeri di H(z) e viceversa, un sistema avr`a un inverso stabile
se e solo se non solo i suoi poli ma anche i suoi zeri giacciono entro il cerchio
unitario.
Naturalmente non tutti i sistemi hanno un inverso: ad esempio, un sistema del
tipo ltro passa-basso ideale (Fig. 2.12) non ha inverso. Infatti non c`e modo
di recuperare dalloutput le componenti frequenziali di un segnale di ingresso
che siano state completamente eliminate nel passaggio attraverso il sistema.
2.2 Trasformata di Fourier a tempo discreto (DTFT)
Esaminiamo ora pi` u in dettaglio la rappresentazione di segnali e sistemi nel
dominio della frequenza.
58 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Abbiamo visto che i valori di z a modulo unitario, z = e
j
, deniscono le sequen-
ze esponenziali complesse z
n
= e
jn
, aventi la propriet` a di passare attraverso
un sistema LTI senza cambiare forma; luscita `e ancora esponenziale complessa
alla stessa frequenza dellingresso, con ampiezza e fase determinate dal sistema:
x[n] = z
n
|
|z|=1, =
0
y[n] = z
n
H(z)|
|z|=1, =
0
= e
j
0
n
H(e
j
0
)
dove
e
j
0
n
`e lautofunzione del sistema LTI che corrisponde allautovalore H(e
j
0
)
linsieme dei valori di H(e
j
0
) per tutti i possibili valori di
0
, cio`e la
funzione H(e
j
), `e la risposta in frequenza del sistema LTI, coincidente
con la DTFT di h[n]:
H(e
j
) = H(z)|
z=e
j =
+

n=
h[n]e
jn
.
La risposta in frequenza
esiste se il sistema `e stabile
descrive, frequenza per frequenza, la modulazione di ampiezza e di fase
operata dal sistema LTI sui segnali dingresso esponenziali complessi.
Passando al caso di una qualsiasi sequenza x[n], si denisce la trasformata di
Fourier a tempo discreto come
X(e
j
) =
+

n=
x[n]e
jn
che `e una quantit`a complessa periodica in con periodo 2.
La DTFT `e detta anche spettro di x[n]. Il modulo dello spettro `e detto spettro
di ampiezza, la fase `e detta spettro di fase.
La DTFT
descrive la composizione di x[n] in termini di sinusoidi discrete di frequenze
angolari < ;
esiste se x[n] `e assolutamente sommabile:
+

n=
|x[n]| <
`e condizione suciente per avere convergenza uniforme della DTFT ad
una funzione continua di , come evidente dal fatto che
|X(e
j
)| =

n=
x[n]e
jn

n=
|x[n]|;
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 59
`e particolarmente utile per descrivere linterazione di x[n] con i sistemi LTI,
a causa della propriet` a degli esponenziali complessi di essere autofunzioni
di tali sistemi;
non esiste nel senso di convergenza uniforme se la ROC di X(z) non include
il cerchio unitario.
Vi sono dunque segnali e sistemi per i quali la trasformata di Fourier a tempo
discreto non converge ma la trasformata z esiste in qualche dominio (non conte-
nente il cerchio unitario): unulteriore motivazione per introdurre la trasformata
z.
La convergenza uniforme che si ha quando x[n] `e assolutamente sommabile
signica che la serie converge uniformemente ad una funzione continua di .
Una sequenza assolutamente sommabile ha anche energia nita:
E (x) =
+

n=
|x[n]|
2

_
+

n=
|x[n]|)
_
2
.
Una sequenza ad energia nita pu` o invece non essere assolutamente sommabile.
In questi casi, per avere ugualmente una rappresentazione tramite DTFT, si
adottano dierenti criteri di convergenza: ad esempio si accetta una convergenza
in media ad una funzione che pu` o avere delle discontinuit` a. In tal caso lerrore
quadratico medio tra la serie troncata e la funzione tender` a zero al crescere
del numero di termini inclusi; nellintorno delle discontinuit` a si avranno delle
oscillazioni (fenomeno di Gibbs; convergenza non uniforme).
Per le sequenze di questo tipo, esiste allora la trasformata di Fourier ma non
la trasformata z (infatti X(e
j
) non `e continua e quindi non pu` o essere una
funzione analitica). In questo caso non `e evidentemente corretto pensare alla
DTFT come al valore assunto sul cerchio unitario dalla trasformata z.
Un tipico esempio `e il ltro ideale passa-basso, mostrato nella Fig. 2.12, che
presenta discontinuit` a a =
c
.
2.2.1 Antitrasformata di Fourier
Poiche X(e
j
) `e periodica, pu` o essere sviluppata in serie di Fourier:
X(e
j
) =
+

n=
c
n
e
jn
con
c
n
=
1
2
_

+
X(e
j
)e
jn
d.
60 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.12: Risposta in frequenza H(e
j
) del ltro passa-basso ideale. Tale
risposta ideale `e reale (fase nulla).
Per confronto diretto con la denizione di DTFT,
X(e
j
) =
+

n=
x[n]e
jn
,
deduciamo che x[n] = c
n
e quindi
x[n] =
1
2
_

+
X(e
j
)e
jn
d
in cui x[n] appare espressa come sovrapposizione di inniti contributi frequen-
ziali nellintervallo < .
Si noti che:
la sequenza `e discreta, quindi la trasformata di Fourier di x[n] contiene
una sommatoria;
la trasformata `e continua, quindi lantitrasformata di Fourier contiene un
integrale continuo.
Si osservi inoltre che
in ambito matematico `e duso scrivere la trasformata con e
+jn
in ambito ingegneristico `e duso scrivere la trasformata con e
jn
e questa `e la convenzione normalmente seguita nella teoria dellanalisi dei se-
gnali.
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 61
2.2.2 Esempio di DTFT che converge in media
Come esempio di DFT che converge in media esaminiamo il ltro ideale passa-
basso (Fig. 2.12) denito come
H(e
j
) =
_
1 || <
c
0
c
< ||
che `e una funzione reale, ossia ha fase nulla (non comporta alcun sfasamento tra
linput e loutput del ltro).
`
E periodica con periodo 2 e presenta discontinuit` a
a =
c
. La corrispondente risposta allimpulso `e
h[n] =
1
2
_

c
+
c
e
jn
d =
sin (
c
n)
n
=

c

sin (
c
n)

c
n
=

c

Sinc(
c
n/)
con < n < +, dove si `e indicato con Sinc() il seno cardinale, ossia la
funzione
Sinc(x) =
_
sin(x)
x
se x = 0,
1 se x = 0.
La sequenza h[n] ha lunghezza innita e non `e causale; non si pu` o calcolare
loutput ricorsivamente o non ricorsivamente; il ltro ideale passa-basso, per il
quale esiste la risposta in frequenza ma non la funzione di trasferimento, non `e
computazionalmente realizzabile.
La sequenza h[n] non `e assolutamente sommabile:
+

n=

sin (
c
n)
n

=
e pertanto la DTFT di h[n],
H(e
j
) =
+

n=
sin (
c
n)
n
e
jn
,
non converge uniformemente per ogni (in corrispondenza del fatto che H(e
j
)
`e discontinua in =
c
).
C`e per` o convergenza in media, perche h[n] `e sommabile al quadrato: quindi
considerando la somma di un numero nito di termini,
H
M
(e
j
)
+M

n=M
sin (
c
n)
n
e
jn
,
si ha che
lim
M
_
+

|H(e
j
) H
M
(e
j
)|
2
d = 0.
Tale convergenza non uniforme `e caratterizzata dal fenomeno di Gibbs (Fig. 2.13).
Analoghe considerazioni valgono per il passa-alto ideale (Fig. 2.14) denito da
62 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO

c 0 +
c
+
0
1
H
M
[
e
x
p
(
j

)
]
M = 1

c 0 +
c
+
0
1
H
M
[
e
x
p
(
j

)
]
M = 3

c 0 +
c
+
0
1
H
M
[
e
x
p
(
j

)
]
M = 7

c 0 +
c
+
0
1
H
M
[
e
x
p
(
j

)
]
M = 19
Figura 2.13: Il fenomeno di Gibbs
H(e
j
) =
_
0 || <
c
1
c
< ||
Figura 2.14: Risposta in frequenza del ltro passa-alto ideale
e per gli altri ltri ideali selettivi in frequenza: il passa-banda ideale (Fig. 2.15)
ed il ferma-banda ideale (Fig. 2.16).
2.2.3 Spettri a righe
`
E utile introdurre una rappresentazione di DTFT per sequenze che non sono n`e
assolutamente sommabili, n`e sommabili al quadrato.
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 63
Figura 2.15: Risposta in frequenza del ltro passa-banda ideale
Figura 2.16: Risposta in frequenza del ltro ferma-banda ideale
Si tratta di estensioni in cui si fa uso delle cosiddette funzioni generalizzate
(Lighthill, 1958), di cui un esempio `e la di Dirac.
Usando tali funzioni, il concetto di trasformata di Fourier pu` o essere esteso
rigorosamente alla classe delle sequenze esprimibili come somma di componenti
frequenziali discrete
x[n] =

k
a
k
e
j
k
n
,
con < n < +.
In particolare, si dimostra che x
1
[n] = e
j
0
n
(esponenziale complesso di fre-
quenza
0
) pu` o essere associata ad una trasformata di Fourier che `e un treno
di impulsi periodico (Fig. 2.17, pannello a)
X
1
(e
j
) =
+

r=
2(
0
+ 2r)
(dove quella indicata `e una delta di Dirac, funzione della variabile continua ).
Allora ogni x[n] esprimibile come somma di componenti frequenziali discrete `e
trasformabile come
X(e
j
) =
+

r=

k
2a
k
(
k
+ 2r).
64 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Ogni in questa espressione rappresenta una singola linea spettrale a frequenza

k
, per cui si pu` o dire che una sovrapposizione di segnali sinusoidali discreti
produce uno spettro discreto ossia a righe (Fig. 2.17, pannello b).
Figura 2.17: a) Spettro X
1
(e
j
): treno di impulsi periodico; b) uno spettro
X(e
j
) a righe
2.2.4 Periodicit`a dello spettro di x[n]
Facciamo qui delle considerazioni preliminari qualitative sulla ragione della
periodicit` a di X(e
j
).
Tale periodicit` a si comprende pensando ad una x[n] ottenuta per campionamen-
to a passo T
c
costante di un segnale analogico x(t): x[n] = x(nT
c
) (Fig. 2.18).
Pi` u avanti tratteremo in dettaglio il processo del campionamento; per ora di-
ciamo solo che `e possibile dimostrare che
se il campionamento `e eseguito correttamente, a meno di un fattore T
c
la
trasformata di Fourier analogica X(f) di x(t) e la DTFT X(e
j
) di x[n]
considerata su un periodo (cio`e su < ) coincidono;
il campionamento corretto risulta possibile se X(f) `e limitato in banda,
ed esiste una relazione tra il limite di banda e il passo di campionamento
necessario; pi` u precisamente, X(f) deve annullarsi fuori dallintervallo

1
2T
c
, +
1
2T
c
.
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 65
0
t
x
(
t
)
0
n
x
[
n
]
Figura 2.18: a) Segnale analogico e b) suo campionamento a passo costante
Lintervallo di frequenze
_

_
<
/T
c
< /T
c

1
2T
c
f < +
1
2T
c
include componenti di frequenza presenti nel segnale continuo dorigine, mentre
la natura ripetitiva dello spettro `e dovuta al processo stesso di campionamento.
Infatti il risultato di tale processo, ossia il segnale campionato, pu` o essere consi-
derato formalmente come un segnale discreto - come fatto nora - oppure anche
come un segnale formalmente a tempo continuo, costituito da un insieme di im-
pulsi scalati in ampiezza e ritardati, innitamente stretti. Daltra parte, `e noto
dalla teoria dei segnali analogici che pi` u un segnale analogico `e concentrato nel
tempo, pi` u `e esteso in frequenza (vedere Capitolo 3); quindi lo spettro di un
segnale innitamente stretto nel tempo contiene contributi di tutte le frequenze.
Si comprende cos` perche X(e
j
) debba essere innitamente esteso, anche nel
caso in cui derivi da un segnale analogico il cui spettro X(f) `e limitato fra
1
2T
c
e +
1
2T
c
(Fig. 2.19).
2.2.5 Propriet`a della DTFT
1. Linearit` a:
ax
1
[n] +bx
2
[n] aX
1
(e
j
) +bX
2
(e
j
)
dove a e b sono costanti arbitrarie.
2. Simmetria: le propriet` a di simmetria sono importanti perche apportano
semplicazioni nei calcoli. Tralasciando per brevit` a il caso pi` u generale di
una sequenza complessa, per sequenze puramente reali si dimostra che
66 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO

1
2T
c
0
+
1
2T
c
f
X
(
f
)
3 2 0 + +2 +3

X
[
e
x
p
(
j

)
]
Figura 2.19: Spettri del segnale analogico e di quello campionato
X(e
j
) = X

(e
j
) (funzione coniugata simmetrica);
[X(e
j
)] e |X(e
j
)| sono funzioni pari,
[X(e
j
)] e arg [X(e
j
)] sono funzioni dispari;
pertanto [X(e
j
)] `e sviluppabile in serie di soli coseni e [X(e
j
)]
`e sviluppabile in serie di soli seni:
[X(e
j
)] =
+

n=
x[n] cos (n),
[X(e
j
)] =
+

n=
x[n] sin (n);
separando x[n] nelle sue parti pari e dispari, x[n] = x
e
[n] + x
o
[n], si
ha
x
e
[n] [X(e
j
)],
x
o
[n] j[X(e
j
)],
dove le trasformate sono quindi, rispettivamente, puramente reale e
puramente immaginaria.
3. Ritardo (propriet` a che esprime il fatto che ritardando un segnale non se
ne altera la composizione in frequenza, ossia lo spettro di ampiezza non
cambia):
y[n] = x[n m] Y (e
j
) = e
jm
X(e
j
).
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 67
4. Folding o rovesciamento temporale:
x[n] X(e
j
)
che `e uguale, se x[n] `e reale, a X

(e
j
);
x

[n] X

e
(j)
.
5. Derivazione:
nx[n] j
dX(e
j
)
dt
.
6. Complesso-coniugazione:
x

[n] X

(e
j
).
Se x[n] `e reale, X

(e
j
) = X(e
j
) x[n] = x

[n] (com`e ovvio).


7. Convoluzione continua periodica:
w[n] = x[n]y[n] W(e
j
) =
1
2
_
+

X(e
j

)Y [e
j(

)
]d

.
8. Convoluzione prodotto:
y[n] = x[n] h[n] Y (e
j
) = X(e
j
)H(e
j
).
9. Modulazione:
e
jn
x[n] X[e
j()
]
(traslazione in frequenza).
10. Relazione di Parseval per la DTFT:
+

n=
x[n]y

[n] =
1
2
_
+

X(e
j
)Y

[e
j
]d
e se x[n] = y[n]
+

n=
|x[n]|
2
=
1
2
_
+

|X(e
j
)|
2
d
che esprime la conservazione dellenergia nel passaggio dal dominio del
tempo a quello della frequenza e che ci sar`a utile quando tratteremo la
normalizzazione spettrale.
11. Trasformata di una sequenza reale pari :
x
e
[n] = x
e
[n] X
e
(e
j
) = x
e
[0] + 2
+

n=1
x
e
[n] cos (n)
con
arg[X
e
(e
j
)] =
_

_
0 X
e
(e
j
) > 0
X
e
(e
j
) < 0
non denita X
e
(e
j
) = 0
e pertanto la trasformata di una sequenza reale pari `e una funzione reale
e pari della frequenza.
68 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
12. Trasformata di una sequenza pari attorno ad un N
s
= 0 intero (Fig. 2.20):
x[n] = x
e
[n N
s
] X(e
j
) = e
jN
s
X
e
(e
j
)
e ricordando che X
e
(e
j
) `e una funzione reale e pari di , vediamo che
X(e
j
) e X
e
(e
j
) hanno lo stesso modulo,
arg[X(e
j
)] = arg[X
e
(e
j)
] N
s
.
Pertanto a parte i salti di dovuti ai cambiamenti di segno di X
e
(e
j
),
la fase di X(e
j
) `e lineare in .
Questa propriet` a `e importante nel progetto di ltri numerici.
Analoghe propriet` a valgono per N
s
semintero.
N
s
x
[
n
]
N
s
x
[
n
]
Figura 2.20: Segnale pari attorno ad un N
s
= 0 intero o semintero
13. Trasformata di una sequenza reale dispari :
x
o
[n] = x
o
[n] X
o
(e
j
) = 2j
+

n=1
x
o
[n] sin (n)
con
|X
o
(e
j
)| = 2

n=1
x
o
[n] sin (n)

,
arg[X
o
(e
j
)] =
_

_
/2 X
o
(e
j
) > 0
/2 X
o
(e
j
) < 0
non denita X
o
(e
j
) = 0
e pertanto la trasformata di una sequenza reale dispari `e una funzione
immaginaria e dispari della frequenza.
14. Trasformata di una sequenza dispari attorno ad un N
s
= 0 intero (Fig. 2.21):
x[n] = x
o
[n N
s
] X(e
j
) = e
jN
s
X
o
(e
j
)
e ricordando X
o
(e
j
), funzione immaginaria e dispari di , vediamo che
2.2. TRASFORMATA DI FOURIER A TEMPO DISCRETO (DTFT) 69
X(e
j
) e X
o
(e
j
) hanno lo stesso modulo,
arg[X(e
j
)] = arg[X
o
(e
j
)] N
s
.
Pertanto a parte i salti di dovuti ai cambiamenti di segno di X
e
(e
j
),
la fase di X(e
j
) `e lineare in .
Analoghe propriet` a valgono per N
s
semintero.
N
s
x
[
n
]
N
s
x
[
n
]
Figura 2.21: Segnale dispari attorno ad un N
s
= 0 intero o semintero
2.2.6 La DTFT di una sequenza causale di lunghezza nita
Introduciamo qui in maniera qualitativa la Trasformata Discreta di Fourier
(DFT = Discrete Fourier Transform), cui in seguito arriveremo attraverso un
procedimento pi` u rigoroso e che costituisce il principale strumento di analisi dei
segnali discreti nel dominio della frequenza.
Un segnale discreto pu` o essere ricostruito, conoscendo la sua X(e
j
) ad ogni
frequenza in (, +), mediante la relazione di sintesi della DTFT.
Se per` o il segnale ha durata nita : x[n] = 0 per 0 n N 1, la conoscenza
di un numero nito di valori di X(e
j
) pu` o essere suciente, a patto di scegliere
bene le alle quali eettuare le stime di X(e
j
).
Intuitivamente: la DTFT `e una operazione lineare, quindi N valori di X(e
j
)
a N valori
k
di (con 0 k N 1) forniscono N equazioni lineari nelle N
incognite x[n] (con 0 n N1); il sistema ha soluzione unica se la matrice dei
coecienti non `e singolare. Perci`o se le
k
vengono scelte in modo da soddisfare
questo vincolo, i valori di x[n] possono essere calcolati univocamente.
I campioni X(e
j
)|
=
k
= X[k] costituiscono la DFT di x[n].
70 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Risulta che una scelta opportuna delle
k
corrisponde ad una suddivisione di
(, +) sul cerchio unitario in N parti uguali (Fig. 2.22):

k
=
2k
N
.
La DFT pu` o essere dunque vista come risultato di campionamento in frequen-
Figura 2.22: Campionamento della DTFT sul cerchio unitario: esempio con
N=12
za della DTFT mediante N campioni equispaziati in frequenza nellintervallo
(, +) o, equivalentemente, in (0, 2):
X[k] = X(e
j
2
N
k
) =
N1

n=0
e
j
2
N
kn
che rappresenta appunto il campionamento di una funzione continua di , pe-
riodica con periodo 2, ed `e quindi una sequenza discreta come il segnale di
partenza.
La derivazione e linterpretazione della DFT pi` u rigorosamente si ottengono coi
seguenti passi logici:
sequenza di lunghezza nita,
estensione periodica della sequenza,
Discrete Fourier Series (DFS) della sequenza periodica,
DFT come singolo periodo estratto dalla DFS.
Tale procedimento mette in luce la fondamentale caratteristica della periodicit`a
insita nella DFT e le relative implicazioni nelle applicazioni pratiche.
Inoltre introducendo la DFS si viene a disporre del formalismo necessario per de-
scrivere le propriet` a della DFT e si comprende perche occorra prendere campioni
equispaziati in frequenza.
2.3. DISCRETE FOURIER SERIES (DFS) 71
2.3 Discrete Fourier Series (DFS)
Discutiamo lestensione periodica di una sequenza causale di lunghezza nita e
la sua rappresentazione nel dominio della frequenza, che costituisce appunto la
DFS.
Preso un segnale x[n] (0 n N 1), consideriamo x
p
[n] ottenuta ripetendo
x[n] innite volte sullasse n senza sovrapposizioni: si tratta ovviamente di una
sequenza periodica con periodo N.
La trasformata z e la trasformata di Fourier DTFT di x
p
[n] non esistono (ri-
cordiamo infatti che le sequenze periodiche non ammettono trasformata z) ma
`e possibile rappresentare x
p
[n] come Discrete Fourier Series (DFS), ossia come
sovrapposizione di N esponenziali complessi in relazione armonica fra loro.
Ricordando che nel discreto esistono solo N frequenze angolari distinte multiple
intere di quella fondamentale associata alla periodicit` a (2/N), la relazione di
sintesi della DFS pu` o scriversi come
x
p
[n] =
1
N
N1

k=0
X
p
[k]e
j
2
N
nk
(si noti la dierenza rispetto al caso continuo, in cui si avrebbe una serie di
inniti termini).
I coecienti dello sviluppo sono ricavabili sfruttando lortogonalit` a del set degli
esponenziali complessi: per m intero, si ha
1
N
N1

n=0
e
j
2
N
(kr)n
=
_
1 k r = mN
0 altrove.
In tal modo si ottiene la relazione di analisi della DFS,
X
p
[k] =
N1

n=0
x
p
[n]e
j
2
N
kn
.
Si ricordi che
2
N
k =
k
e che x
p
[n] x[n] per n = 0, N 1.
La DFS X
p
[k] pu` o essere interpretata come una sequenza di durata nita (0
k N 1) oppure come una sequenza periodica con periodo N, per k intero
qualsiasi. Adottiamo la seconda interpretazione, atta ad ottenere una esatta
dualit` a fra i domini del tempo e della frequenza.
La sequenza X
p
[k] pu` o inoltre essere intesa come sequenza di campioni, presi
equispaziati in angolo percorrendo innite volte il cerchio unitario, di X(z), la
trasformata z di x[n], che essendo x[n] di durata nita esiste certamente almeno
per 0 < |z| < .
72 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
2.3.1 Alcune propriet`a della DFS
1. Linearit` a:
ax
p1
[n] +bx
p2
[n] aX
p1
[k] +bX
p2
[k]
con a e b costanti arbitrarie.
2. Traslazione:
x
p
[n m] e
j
2
N
km
X
p
[k],
e
+j
2
N
kl
x
p
[n] X
p
[k l].
Ogni traslazione di m
2
campioni, con m
2
> N, non `e distinguibile da una
minore, di m
1
campioni con 0 m
1
N 1, tale che m
2
= m
1
+rN con
r intero.
3. Complesso-coniugazione:
x

p
[n] X

p
[k].
4. Folding:
x
p
[n] X
p
[k],
x

p
[n] X

p
[k].
5. Dualit` a:
x
p
[n] X
p
[k] X
p
[n] Nx
p
[k]
6. Simmetria: limitandoci ancora alle sole sequenze reali,
la parte reale ed il modulo di X
p
[k] sono pari, la parte immaginaria
e la fase sono dispari;
X
p
[k] = X

p
[k].
7. Convoluzione periodica:
prese due sequenze x
p1
[n] e x
p2
[n] entrambe con periodo N e calcolata
la loro DFS, quale sequenza corrisponde a (ossia `e lantitrasformata di)
X
p3
[k] = X
p1
[k] X
p2
[k]?
Si trova che
x
p3
[n] =
N1

m=0
x
p1
[m]x
p2
[n m] x
p1
[n] x
p2
[n].
La sequenza x
p3
[n] `e periodica ancora con periodo N, la sommatoria `e
estesa ad un solo periodo dei due fattori x
p1
[n] e x
p2
[n] ed il simbolo
indica la convoluzione periodica delle due sequenze, la quale gode della
propriet` a commutativa.
In Fig. 2.23 `e riportato un esempio di calcolo di convoluzione periodica
e precisamente, per le due sequenze x
p1
[n] e x
p2
[n] di periodo N = 8 ivi
gracate, il calcolo del campione x
p3
[2].
2
.
3
.
D
I
S
C
R
E
T
E
F
O
U
R
I
E
R
S
E
R
I
E
S
(
D
F
S
)
7
3
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11
0
2
4
6
x
p
2
[
m
]
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11
0
1
2
3
x
p
1
[
m
]
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11
0
2
4
6
x
p
2
[
2

m
]
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11
0
1
2
3
m
x
p
1
[
2

m
]
Figura 2.23: Esempio di convoluzione periodica: schema per il calcolo del campione n = 2 di x
p3
[n] = x
p1
[n] x
p2
[n]. Si giunge al
medesimo risultato moltiplicando tra loro campione per campione le due sequenze disegnate in verde, oppure le due disegnate in blu
74 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Il calcolo `e fattibile in due modi, indicati in gura con colori diversi: nel
caso in cui si combinino le sequenze disegnate in blu, x
p3
[2] = 3 6 +3
3+31 = 30, mentre nel caso in cui si combinino le sequenze disegnate in
verde si arriva allo stesso valore calcolando x
p3
[2] = 33+63+31 = 30.
Analogamente se
x
p3
[n] = x
p1
[n] x
p2
[n]
si ha
X
p3
[k] =
1
N
N1

l=0
X
p1
[l]X
p2
[k l]
1
N
X
p1
[k] X
p2
[k].
2.3.2 Campionamento nel dominio della frequenza e alia-
sing nel dominio del tempo
Se x
p
[n] `e una sovrapposizione di repliche non sovrapponentisi di una x[n] di
durata nita N, X
p
[k] nellintervallo 0 k N1 rappresenta una sequenza di
N campioni di X(z), presi percorrendo una volta il cerchio unitario. Ovviamente
questi sono anche campioni di X(e
j
).
Supponiamo ora di avere invece una sequenza aperiodica x[n] di lunghezza im-
precisata, con DTFT X(e
j
), e di prendere un numero N ssato ad arbitrio di
campioni di X(e
j
) equispaziati in frequenza.
Consideriamo poi tali campioni come i coecienti della DFS di una sequenza
periodica x
p
[n] e calcoliamo questultima tramite la relazione di sintesi della
DFS. Che relazione esister` a in generale tra x
p
[n] e x[n]?
Sappiamo che se x[n] ha lunghezza nita pari a N, x
p
[n] `e una successione di
repliche adiacenti di x[n] senza sovrapposizione; ma che succede se x[n] `e pi` u
lunga, cio`e ha lunghezza N

> N?
Si dimostra che in generale
x
p
[n] =
+

l=
x[n +lN]
con l intero, dove `e inteso che x[] = 0 per valori dellindice esterni allintervallo
chiuso (0, N

1).
Perci`o x
p
[n] `e formato unendo un numero innito di repliche di x[n] traslate
ogni volta di N; se N

> N si ha sovrapposizione delle repliche adiacenti e


la forma del segnale originario x[n] viene corrotta, nellestensione periodica
x
p
[n], dalla sovrapposizione delle code delle repliche contigue.
Questo fenomeno prende il nome di aliasing nel dominio del tempo.
Se invece N

N, le repliche adiacenti non si sovrappongono: se N

< N sono
separate da zeri o al limite, se N

= N, sono giustapposte.
2.3. DISCRETE FOURIER SERIES (DFS) 75
Le Fig. 2.24, 2.25 e 2.26 mostrano, a partire da una certa sequenza di durata
N

= 9 (Fig. 2.24), due casi, uno senza aliasing nel tempo (N = 12, Fig. 2.25)
e laltro con aliasing nel tempo (N = 7, Fig. 2.26).
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11
n
x
[
n
]
Figura 2.24: Sequenza x[n] con durata di N

= 9 campioni
6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
n
x
[
n
]
Figura 2.25: Sequenza x
p
[n] priva di aliasing, ottenuta da x[n] della Fig. 2.24
con N = 12
Se N

> N, linformazione contenuta in quegli N campioni di X(e


j
) si rivela
dunque insuciente a ricostruire x[n]: sarebbero stati necessari N

> N cam-
pioni; si `e sottocampionato in frequenza e come risultato si `e persa la capacit`a di
ricostruire il segnale originario. Se, e solo se, N

N, x[n] pu` o essere ricostruita


a partire da x
p
[n] estraendo un periodo (che `e lungo N).
Nel dominio delle trasformate, ci esprimeremo cos`: x[n] di lunghezza N

N
pu` o essere rappresentata esattamente da N campioni di X(z) (ossia di X(e
j
))
presi equispaziati sul cerchio unitario.
76 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
n
x
[
n
]
Figura 2.26: Sequenza x
p
[n] aetta da aliasing, ottenuta da x[n] della Fig. 2.24
con N = 7
Si noti che laliasing nel tempo `e evitabile, campionando con adeguata ttezza
in , se e solo se la x[n] ha durata nita.
Per N

N, tutta la X(z), e quindi anche X(e


j
) per ogni , pu` o essere
ricostruita da quegli N campioni equispaziati in frequenza: non serve conoscere
X(e
j
) a tutte le frequenza se la sequenza x[n] ha lunghezza nita.
Per la ricostruzione di X(z) dai suoi campioni si usa la formula di interpolazione
X(z) =
1 z
N
N
N1

k=0
X
p
[k]
1 e
j
2
N
z
1
che per z = e
j
fornisce
X(e
j
) =
N1

n=0
X
p
[k]
_

2
N
k
_
con
() = e
j
N1
2
sin(
N
2
)
N sin(

2
)
e
j
N1
2

D
()
dove
D
() `e la funzione di Dirichlet (vedere le Fig. 2.27 e 2.28).
Ai nostri ni, questa formula di interpolazione ha importanza pi` u teorica che
pratica.
2.4 Trasformata di Fourier Discreta (DFT)
Consideriamo una sequenza x[n] di lunghezza N, con trasformata campionata
su N punti (o anche una sequenza pi` u corta allungata a N con zeri). In questo
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 77

2
0 +

2
+
+
3
2
+2
+
5
2
+3
0
1
N = 5

D
(

)
Figura 2.27: Funzione di Dirichlet nel caso N = 5. Per valori dispari di N, la
funzione ha periodo 2.
0 + +2 +3 +4 +5
1
1
N = 6

D
(

)
Figura 2.28: Funzione di Dirichlet nel caso N = 6. Per valori pari di N, la
funzione ha periodo 4.
78 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
caso
x
p
[n] =
+

r=
x[n +rN]
`e senza aliasing nel tempo e si pu` o scrivere
x
p
[n] = x[n modN] x[[n]]
N
dove n modN = n [
n
N
]N, con [
n
N
] che indica il pi` u grande intero
n
N
con lo
stesso segno di
n
N
.
Introducendo la sequenza rettangolare (Fig. 2.29)
2 1 0 1 2 3 4 5 6 7 8
0
1
n
R
N
[
n
]
Figura 2.29: Sequenza rettangolare
R
N
[n] =
_
1 0 n N 1
0 altrove
si pu` o scrivere lestrazione di un periodo che restituisce x[n] come
x[n] = x
p
[n]R
N
[n]
che come richiesto d`a
x[n]
_
= 0 0 n N 1
= 0 altrove.
Abbiamo stabilito che
x
p
[n] X
p
[k];
ora possiamo chiederci come denire una trasformata di Fourier di x[n], che
sia una sequenza (scriviamola come X[k]) e non una funzione continua della
frequenza come la DTFT. La sequenza X[k] sar`a la Trasformata di Fourier
Discreta o Discrete Fourier Transform o DFT di x[n].
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 79
Mantenendo la dualit` a tempo-frequenza, si denisce X[k] estraendo un periodo
da X
p
[k]. Si scrive perci`o
X[k] = X
p
[k]R
N
[k]
la cui relazione inversa `e
X
p
[k] = X[[k]]
N
.
Pertanto, riassumendo, le denizioni di DFT diretta (relazione di analisi della
DFT) ed inversa (relazione di sintesi; antitrasformata di Fourier discreta o IDFT
= Inverse Discrete Fourier Transform) sono rispettivamente
X[k] =
_

N1
n=0
x[n]e
j
2
N
kn
0 k N 1
0 altrove,
x[n] =
_
1
N

N1
k=0
X[k]e
+j
2
N
kn
0 n N 1
0 altrove.
Si tenga a mente che le sommatorie sono estese su (0, N 1) e che in quellin-
tervallo x[n] x
p
[n], X[k] X
p
[k].
`
E da notare, inoltre, che:
1. come la DFS, la DFT X[k] `e uguale a campioni di X(e
j
) presi equispaziati
durante un singolo giro lungo il cerchio unitario;
2. se x[n] `e valutata tramite la DFT inversa per valori di n fuori dallintervallo
0 n N 1, il risultato non sar`a 0 ma x
p
[n];
3. se X[k] `e valutata tramite la DFT diretta per valori di k fuori dallinter-
vallo 0 k N 1, il risultato non sar`a 0 ma X
p
[k].
Quindi la periodicit` a insita nella rappresentazione `e sempre presente. Nel
denire la DFT semplicemente riconosciamo che siamo interessati ai valori
di x[n] solo per 0 n N 1, perche x[n] in realt`a `e nulla al di fuori di
tale intervallo; e siamo interessati ai valori di X[k] solo per 0 k N1,
perche questi sono gli unici valori richiesti dalla DFT inversa.
4. DFT, IDFT sono simili e quindi uno stesso programma software pu` o
attuarle entrambe:
_
DFT
_
X

[k]
N
__

=
_
N1

k=0
X

[k]
N
e
j
2
N
kn
_

=
=
1
N
N1

k=0
X[k]e
+j
2
N
kn
= IDFT{X[k]} x[n]
per cui se una routine, data x[n], fornisce X[k], con
X

[k]
N
in input restituir` a
x

[n] che se x[n] `e reale coincide con x[n].


80 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
5. Possiamo ora rivedere pi` u in dettaglio, anche se sempre qualitativamente,
il legame tra lo spettro di un segnale continuo x(t) e lo spettro del segnale
a tempo discreto x[n] = x(nT
c
) ottenuto da x(t) per campionamento a
passo costante T
c
(misure agli istanti t
n
= nT
c
).
Ora usiamo la DFT del segnale campionato per esprimerne le propriet` a
spettrali.
Ci chiediamo dunque quale sia il legame tra
X(f) =
_
+

x(t)e
j2ft
dt
(dove la trasformata `e stata scritta col segno meno nellesponente, secondo
la convenzione seguita in ambito ingegneristico) e X[k].
Qualitativamente,
X(f
k
) =
_
+

x(t)e
j2f
k
t
dt T
c
N1

n=0
x[n]e
j2f
k
t
n
=
= T
c
N1

0
x[n]e
j
2
NT
c
knT
c
= T
c
X[k].
Notiamo che
a meno di un fattore T
c
i due spettri esprimono lo stesso contenuto;
la DFT non dipende da T
c
cos` come x[n] non conosce T
c
;
solo nel caso di x[n] ottenuta per campionamento di un segnale conti-
nuo, T
c
`e un parametro signicativo che lega il caso discreto a quello
continuo.
6. Il prendere campioni equispaziati in frequenza ha la sua ragione nella
forma della DFS (esponenziali in relazione armonica).
2.4.1 Riassunto delle relazioni di DFS e DFT
Raccogliamo qui, per uno sguardo dinsieme, le relazioni di DFS e DFT che
abbiamo scritto per una sequenza x[n] che sia diversa da zero in 0 n N 1
e per un campiomento di X(e
j
) su N punti (assenza di aliasing nel dominio
del tempo). Si tratta di strumenti fondamentali per lanalisi dei segnali a tempo
discreto.
1. X[k] = X(e
j
)|
=
2
N
k
in 0 k N 1
X[k] = 0 allesterno dellintervallo
2. x
p
[n] =

+
m=
x[n +mN] = x[n modN] in n +
3. x[n] = x
p
[n]R
N
[n] in 0 n N 1
x[n] = 0 allesterno dellintervallo
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 81
4. X
p
[k] =

+
m=
X[k +mN] = X[k modN] in k +
5. X[k] = X
p
[k]R
N
[n] in 0 k N 1
X[k] = 0 allesterno dellintervallo
6. x
p
[n] =
1
N

N1
k=0
X
p
[k]e
j
2
N
kn
in n +
(DFS, sintesi)
7. x[n] =
1
N

N1
k=0
X[k]e
j
2
N
kn
in 0 n N 1
x[n] = 0 allesterno dellintervallo
(DFT, sintesi)
8. X
p
[k] =

N1
n=0
x
p
[n]e
j
2
N
kn
in k +
(DFS, analisi)
9. X[k] =

N1
n=0
x[n]e
j
2
N
kn
in 0 k N 1
X[k] = 0 allesterno dellintervallo
(DFT, analisi).
Si noti che nelle relazioni n. 6 e 8, X
p
[k] e x
p
[n] possono essere sostituiti da
X[k] e x[n] rispettivamente, perche le sommatorie sono estese da 0 a N 1.
2.4.2 Esempio di relazione fra DTFT, DFS e DFT di una
sequenza
Prendiamo un caso con x[n] che sia una sequenza causale reale di lunghezza
nita a simmetria pari attorno al campione n =
N1
2
= 3 e generiamo la corri-
spondente sequenza periodica priva di aliasing nel tempo (si veda Fig. 2.30, in
cui N = 7).
Abbiamo visto che per una sequenza di lunghezza nita di questo tipo (reale
pari attorno ad un campione n = N
s
= 0), la DTFT, a parte il fattore lineare di
fase e
jN
s
, `e una funzione reale e pari della frequenza. Analoghe considerazioni
valgono per la DFT e la DFS.
La Fig. 2.31 mostra X(e
j
), X[k] e X
p
[k] nella loro reciproca relazione.
Si pu` o notare come la DFT nella Fig. 2.31 dia unimmagine poco fedele della
forma della DTFT: N = 7 campioni sono sucienti a soddisfare i requisiti teorici
ma scarsi per rendere bene visivamente landamento della DFT.
Per migliorare la continuit` a visiva dei graci si usa in eetti molto spesso una
interpolazione della DFT. In tal modo si rendono visibili pi` u dettagli ma non
si ha pi` u informazione perche tutta linformazione `e contenuta negli N valori di
x[n] di cui si dispone.
82 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
0 1 2 3 4 5 6
x
[
n
]
109 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
n
x
p
[
n
]
Figura 2.30: Esempio di sequenza reale causale pari di lunghezza nita N = 7
e sua estensione periodica
0 +

2
+
+
3
2
+2
DTFT

X
[
e
x
p
(
j

)
]
0 1 2 3 4 5 6
DFT
X
[
k
]
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
DFS
k
X
p
[
k
]
Figura 2.31: DTFT, DFT e DFS della sequenza con N = 7 mostrata in Fig. 2.30
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 83
Quel che si fa `e semplicemente un inttimento del campionamento in frequenza,
ottenuto con la tecnica dellaggiunta di zeri (padding) al fondo della sequenza
x[n].
Ad esempio, data x[n] (n = 0, N 1) si forma
x
z
[n] =
_
x[n] n = 0, N 1
0 n = N, 2N 1.
La DTFT `e X
z
(e
j
) = X(e
j
), ma x
zp
[n] = x
p
[n] e quindi anche X
zp
[k] = X
p
[k]
e X
z
[k] = X[k]:
X
z
[k] = X
z
(e
j
)|
=
2
2N
k
= X(e
j
)|
=

N
k
con k = 0, 2N 1.
Cos` il campionamento di X(e
j
) `e il doppio pi` u tto di prima.
Il padding `e fattibile con un numero N
z
qualunque di zeri: se N diviene N+N
z
,
il fra i campioni della trasformata, originariamente pari a =
2
N
, diviene

=
2
N+N
z
.
2.4.3 Alcune propriet`a della DFT
Le propriet` a della DFT si dimostrano passando attraverso le estensioni periodi-
che delle varie sequenze coinvolte.
1. Linearit` a : se x
1
[n] ha durata N
1
e x
2
[n] ha durata N
2
,
x
3
[n] = ax
1
[n] +bx
2
[n]
ha durata N
3
= max (N
1
, N
2
); calcolando tutte le DFT su almeno N
3
punti (cio`e allungando almeno la sequenza pi` u corta con zeri) si ha
X
3
[k] = aX
1
[k] +bX
2
[k].
2. Traslazione circolare di una sequenza:
quale operazione nel dominio del tempo corrisponde a moltiplicare i cam-
pioni della DFT di una sequenza x[n], 0 n N 1, per un fattore di
fase lineare, del tipo e
j
2
N
km
? Ossia: se X
1
[k] = e
j
2
N
km
X[k], qual`e la
sequenza x
1
[n]?
La sequenza x
1
[n] non corrisponde ad una traslazione lineare di x[n], ed
in eetti entrambe le sequenze x[n] e x
1
[n] sono connate nellinterval-
lo 0 n N 1; invece x
1
[n] `e ottenuta traslando x[n] in modo tale
che quando un campione esce dallintervallo (0, N 1) ad una estremit`a,
vi rientra allaltra estremit`a. Questo equivale a passare allestensione
periodica, traslare questa linearmente e poi estrarre un periodo.
84 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Si visualizza bene loperazione pensando alla sequenza x[n] disposta su una
supercie cilindrica, lungo una circonferenza ottenuta tagliando il cilindro
con un piano perpendicolare al suo asse. La circonferenza comprende esat-
tamente N punti; x
p
[n] corrisponder` a allora a precorrere ripetutamente
la circonferenza stessa; x
1
[n] si otterr`a ruotando il cilindro rispetto alla
posizione precedente, assunta come riferimento.
Questa analogia geometrica riporta immediatamente alle quantit`a perio-
diche associate alle sequenze coinvolte.
Nella Fig. 2.32 sono mostrate, dallalto in basso, una sequenza, la sua
estensione periodica, la traslazione di questa (di m = 2 nellesempio) e
lestrazione di un periodo.
0 1 2 3 4 5
x
[
n
]
8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13
x
p
[
n
]
3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 3 2 1 0 1 2 3
x
p
[
n

m
]
0 1 2 3 4 5
n
x
1
[
n
]
Figura 2.32: Passi per eseguire la traslazione circolare di una sequenza che
nellesempio `e lunga N = 6
Gli stessi passi possono essere seguiti immaginando il cilindro (si vedano
le Fig. 2.33 e 2.34). Nella Fig. 2.33, che `e una vista assiale del cilin-
dro stesso (circonferenza), `e presente un cilindro interno coassiale (verde)
con numeri verdi che indicano le posizioni originarie dei campioni di x[n]
(riferimento). Sul cilindro esterno giace la sequenza, originariamente in
posizione identica al riferimento. La sequenza periodica x
p
[n] corrisponde
al percorrere innite volte la circonferenza.
Ora si ruoti il cilindro esterno di un angolo 2
m
N
rispetto al riferimento,
in verso orario ad esempio, diciamo di due posti (m = 2, Fig. 2.34): per-
correndo innite volte la circonferenza ora abbiamo x
p
[nm] = x
p
[n+2]
e inne estraendo un periodo giungiamo alla sequenza traslata circolar-
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 85
mente,
x
1
[n] =
_
x[[n m]]
N
R
N
[n] 0 n N 1
0 altrove.
Figura 2.33: Passi per eseguire la traslazione circolare di una sequenza operando
con un cilindro: posizione iniziale della sequenza
Figura 2.34: Passi per eseguire la traslazione circolare di una sequenza (di m =
2) operando con un cilindro: posizione nale della sequenza
Analogamente si trova che se X
1
[k] = X[[k l]]
N
R
N
[k] (traslazione cir-
colare di l elementi della DFT), x
1
[n] = e
+j
2
N
lk
x[n] (n = 0, N 1).
3. Dualit` a: labbiamo gi` a esaminata in precedenza, nella sezione 2.4 (punto
n.4 della lista).
Se trasformando con la DFT una sequenza x[n] otteniamo la sequenza
X[k], che cosa otterremmo facendo la DFT della sequenza X[n] ricavata
semplicemente ribattezzando lasse delle ascisse?
86 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Ricordiamo che presa x
p
[n] = x[[n]]
N
, per la dualit` a della DFS si ha
x
p
[n] X
p
[k] e X
p
[n] Nx
p
[k]; ricordiamo inoltre che il legame
con la DFT di x[n] `e X
p
[k] = X[[k]]
N
.
Consideriamo ora una sequenza fatta con i campioni della DFS di x
p
[n]:
x
p1
[n] X
p
[n], che su un singolo periodo `e x
1
[n] X[n].
I campioni della DFS di x
p1
[n] saranno X
p1
[k] = Nx
p
[k] e quindi la
DFT di x
1
[n] sar`a
X
1
[k] = Nx
p
[k]R
N
[k] = Nx[[k]]
N
R
N
[k].
In conclusione, se x[n] X[k] allora X[n] Nx[[k]]
N
R
N
[k] con
k = (0, N 1).
4. Simmetria: dalle propriet` a di simmetria della DFS si ricavano quelle della
DFT.
Limitandosi al caso di sequenze reali, si dimostra che
la parte reale ed il modulo di X[k] sono pari, la parte immaginaria e
la fase sono dispari;
X[k] = X

[[k]]
N
R
N
[k].
A proposito della seconda propriet` a, notiamo che poiche per k = 0, N 1
si ha [[k]]
N
= N k, si ha che per 0 k N 1 vale
X[k] = X

[N k]
e quindi
|X[k]| = |X[N k]|;
e siccome nei graci si riportano i moduli delle trasformate, in essi c`e
simmetria dei campioni attorno al punto k =
N
2
, come si pu` o vedere in
Fig. 2.35 per un esempio in cui N = 8.
La Fig. 2.35 riporta nel pannello superiore |X[k]|, in quello centrale |X
p
[k]| =
|X[[k]]
N
| = |X

[[k]]
N
| ed in quello inferiore |X
p
[k]| = |X[[k]]
N
| =
|X

[[k]]
N
|. I graci nei due ultimi pannelli sono uguali, a causa della
simmetria dei campioni di |X[k]| attorno al punto k =
N
2
= 4.

E solo gra-
zie a tale simmetria che estraendo un periodo da |X
p
[k]| (parte compresa
tra le linee rosse in gura) si riproduce |X[k]|.
Altre propriet` a di simmetria per x[n] reale sono le seguenti:
{X[k]} = {X[[k]]
N
}R
N
[k] (essendo {X[k]} pari),
{X[k]} = {X[[k]]
N
}R
N
[k] (essendo {X[k]} dispari),
|X[k]| = |X[[k]]
N
|R
N
[k] (essendo |X[k]| dispari),
arg {X[k]} = arg {X[[k]]
N
}R
N
[k] (essendo arg {X[k]} dispari).
5. Teorema di Parseval per la DFT:
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 87
0 1 2 3 4 5 6 7
|
X
[
k
]
|
5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12
|
X
p
[
k
]
|
5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12
k
|
X
p
[

k
]
|
Figura 2.35: Simmetria della DFT di una sequenza reale
partendo dalla denizione di X[k] si dimostra che
N1

n=0
|x[n]|
2
=
1
N
N1

k=0
|X[k]|
2
.
Si noti che il termine N a denominatore del secondo membro rappresenta
il numero di campioni di X[k], in quanto proviene dal tra i campioni
frequenziali. Se `e stato fatto un padding di zeri, non coincider` a con il
numero di campioni della sequenza x[n]!
Per dati a media nulla, il primo membro rappresenta la varianza.
6. Convoluzione circolare di due sequenze di uguale durata nita N (as-
sunzione non restrittiva perche una o entrambe possono sempre venire
allungate mediante aggiunta di zeri al fondo):
se
x
1
[n] X
1
[k]
e
x
2
[n] X
2
[k],
e se si forma
X
3
[k] = X
1
[k] X
2
[k],
quale sequenza x
3
[n] si ottiene poi antitrasformando?
88 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Si noti che essendo X
1
[k] e X
2
[k] ugualmente campionate in frequenza, ha
eettivamente senso scrivere il prodotto campione per campione che d`a
origine a X
3
[k].
I calcoli mostrano che la sequenza x
3
[n], denita per 0 n N 1, `e
data da
x
3
[n] = x
p3
[n]R
N
[n] =
_
N1

m=0
x
p1
[m]x
p2
[n m]
_
R
N
[n] =
=
N1

m=0
x
1
[m] {x
2
[[n m]]
N
R
N
[m]} x
1
[n] x
2
[n] = x
2
[n] x
1
[n].
Questa operazione, indicata dal simbolo , `e detta convoluzione circolare
delle due sequenze x
1
[n] e x
2
[n] su N punti.
Per la dualit` a tempo-frequenza si ha anche, su N punti,
x
1
[n]x
2
[n]
1
N
X
1
[k] X
2
[k].
Nella convoluzione circolare, la seconda sequenza `e circolarmente rove-
sciata nel tempo e traslata circolarmente nel tempo di n posti rispetto
alla prima sequenza: la convoluzione circolare `e diversa dalla convoluzione
lineare.
La convoluzione circolare in pratica `e una convoluzione periodica, ma uti-
lizzando la nozione di traslazione circolare ed eventualmente, come aiu-
to alla visualizzazione, lanalogia del cilindro, non `e necessario costruire
eettivamente le sequenze periodiche coinvolte.
Per capire tutti i passaggi, facciamo tuttavia un esempio di convoluzione
circolare su N punti con riferimento alle sequenze periodiche: prendiamo
(Fig. 2.36, pannello a)
x
1
[n] = [n 1] =
_

_
0 n = 0
1 n = 1
0 2 n N 1
considerandola come una sequenza lunga N = 5 e supponiamo di voler-
ne calcolare la convoluzione circolare con una sequenza x
2
[n] di uguale
lunghezza, con la forma mostrata in Fig. 2.36, pannello b.
Costruiamo ora il campione a n = 0 di x
3
[n] = x
1
[n] x
2
[n] (Fig. 2.37).
Formiamo pertanto x
2
[[m]]
N
(pannello superiore) e poi x
2
[[0m]]
N
(pan-
nello inferiore); in seguito eseguiamo loperazione x
2
[[0 m]]
N
R
N
[m], che
signica estrarre solo i campioni di x
2
[[0m]]
N
compresi tra le linee rosse
verticali in gura. Ora moltiplichiamo termine a termine la sequenza cos`
ottenta con x
1
[m] e sommiamo: otteniamo x
3
[0] = 5 0 +1 1 +2 0 +
3 0 + 4 0 = 1.
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 89
0 1 2 3 4
0
1
2
3
4
5
m
x
1
[
m
]
0 1 2 3 4
0
1
2
3
4
5
m
x
2
[
m
]
Figura 2.36: Due sequenze di cui calcolare la convoluzione circolare su N = 5
punti
5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0
1
2
3
4
5
x
2
[
[
m
]
]
N
5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0
1
2
3
4
5
m
x
2
[
[
0

m
]
]
N
Figura 2.37: Passaggi per il calcolo del campione a n = 0 di x
3
[n] = x
1
[n]x
2
[n]
Analogamente, per il campione x
3
[1] avremo (vedere Fig. 2.38) x
3
[1] = 5
ecc..., no a n = N 1.
2.4.4 Convoluzione circolare e convoluzione lineare
Ancora riferendoci alla convoluzione circolare, per vedere bene la dierenza
tra questa e la convoluzione lineare facciamo un ulteriore esempio, utilizzando
lanalogia del cilindro.
Si ricordi che presi x
1
[n] (0 n N
1
1) e x
2
[n] (0 n N
2
1), la
90 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0
1
2
3
4
5
x
2
[
[
m
]
]
N
5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
0
1
2
3
4
5
m
x
2
[
[
1

m
]
]
N
Figura 2.38: Passaggi per il calcolo del campione a n = 1 di x
3
[n] = x
1
[n]x
2
[n]
convoluzione lineare delle due sequenze `e
x
1
[n] x
2
[n] = x

3
[n] =
m
2

m=m
1
x
1
[m]x
2
[n m]
dove m
1
e m
2
sono i limiti niti che la somma di convoluzione presenta nel caso
in cui si convolvano due sequenze di durata nita (cfr. sottosezione 1.3.2).
Il prodotto che compare nella sommatoria `e zero ogni volta che n < 0 oppure
n > N
1
+N
2
2, cos` che la lunghezza di x

3
[n] `e N
1
+N
2
1.
Nel caso N
1
= N
2
= N che stiamo considerando, la convoluzione lineare `e lunga
2N 1: non pu` o quindi coincidere con la convoluzione circolare su N punti, che
`e lunga N.
Prendiamo due sequenze con N = 6, uguali fra loro: x
1
[n] x
2
[n], con la
forma mostrata in Fig. 2.39, e calcoliamone sia la convoluzione lineare, sia quella
circolare su N punti (questultima utilizzando lanalogia del cilindro).
1. Convoluzione lineare: x

3
[n] = x
1
[n] x
2
[n].
Nella Fig. 2.40 sono rappresentate, scorrendo i pannelli dallalto verso il
basso:
la prima sequenza;
la seconda sequenza disegnata rovesciata a partire da n = 0 per il
calcolo di x

3
[0]. Un solo termine della sommatoria `e diverso da zero:
x

3
[0] = 1 1 = 1;
la seconda sequenza disegnata rovesciata a partire da n = 1 per il
calcolo di x

3
[1]. Due termini della sommatoria sono diversi da zero:
x

3
[1] = 1 1 + 1 1 = 2;
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 91
2 1 0 1 2 3 4 5 6 7 8
0
1
n
x
1
[
n
]
=
x
2
[
n
]
Figura 2.39: Le sequenze di esempio per il confronto fra convoluzione lineare e
circolare
la seconda sequenza disegnata rovesciata a partire da n = 5 per il
calcolo di x

3
[5]. Sei termini della sommatoria sono diversi da zero:
x

3
[5] = 1 1 + 1 1 + 1 1 + 1 1 + 1 1 + 1 1 = 6;
la seconda sequenza disegnata rovesciata a partire da n = 6 per il
calcolo di x

3
[6]. Cinque termini della sommatoria sono diversi da
zero: x

3
[6] = 1 1 + 1 1 + 1 1 + 1 1 + 1 1 = 5.
La forma risultante di x

3
[n] `e mostrata nella Fig. 2.41; la lunghezza `e
2N 1 = 11.
2. Convoluzione circolare su N punti: x
3
[n] = x
1
[n] x
2
[n].
Immaginiamo due cilindri coassiali, uno per ogni sequenza.
Nella Fig. 2.42 `e rappresentata, come esempio, la posizione del cilindro
interno rispetto a quello esterno, atta ad ottenere x
3
[2]; sono riportati i
valori degli indici. Per ottenere gli altri valori di x
3
[n] si fa ruotare il
cilindro interno rispetto a quello esterno.
Lanaloga Fig. 2.43 riporta invece i valori dei campioni da moltiplicare fra
loro. Il risultato `e x
3
[2] = 1 1 +1 1 +1 1 +1 1 +1 1 +1 1 = 6
dove i sei prodotti indicati corrispondono rispettivamente alle coppie A,
B, C, D, E e F in gura.
Risulta quindi {x
3
[2] = 6} = {x

3
[2] = 3} e si vede bene che ci`o `e dovuto
ai termini D, E, F che sono assenti nella convoluzione lineare.
`
E chiaro
a questo punto che la dierenza risiede nel fatto che nella convoluzione
circolare le code delle sequenze che escono dallintervallo utile ad un suo
estremo vi rientrano allaltro estremo, corrompendo cos` la convoluzione
circolare rispetto a quella lineare, che `e quella di riferimento: si tratta in
sostanza di aliasing nel dominio del tempo, come si comprende pensando
al corrispondente campionamento in frequenza.
Infatti se il risultato della convoluzione lineare `e lungo 2N1, deve essere
rappresentato da una DFT lunga 2N 1 punti. Questultima potr`a essere
9
2
C
A
P
I
T
O
L
O
2
.
T
R
A
S
F
O
R
M
A
T
E
D
I
S
E
G
N
A
L
I
A
T
E
M
P
O
D
I
S
C
R
E
T
O
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8
0
1
x
1
[
m
]
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8
0
1
x
2
[
0

m
]
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8
0
1
x
2
[
1

m
]
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8
0
1
x
2
[
5

m
]
7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8
0
1
m
x
2
[
6

m
]
Figura 2.40: Passaggi per il calcolo della convoluzione lineare delle due sequenze rettangolari mostrate sopra
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 93
2 1 0 1 2 3 4 5 6 7 8 9 10 11 12 13
0
1
2
3
4
5
6
n
x
3

[
n
]
Figura 2.41: Risultato della convoluzione lineare delle due sequenze rettangolari
mostrate sopra
Figura 2.42: Come disporre su due cilindri coassiali le sequenze x
1
[n] e x
2
[n]
per ottenere il campione con n = 2 della convoluzione circolare su N = 6 punti.
I numeri indicano valori dellindice temporale m relativo alla sommatoria di
convoluzione circolare
94 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.43: Prodotti di valori dei campioni delle sequenze coinvolte, da eseguire
per calcolare il campione a n = 2 della convoluzione circolare su N = 6 punti
vista come il prodotto termine a termine delle DFT delle singole sequenze
fattori, se queste verranno calcolate ognuna su 2N 1 punti.
In conclusione, la convoluzione lineare e quella circolare daranno lo stesso
risultato se ogni sequenza da convolvere verr` a allungata con N 1 zeri,
no a lunghezza 2N 1, necessaria a contenere la convoluzione lineare.
La Fig. 2.44 illustra la convoluzione circolare delle due sequenze in esame,
calcolata con questo accorgimento: sia x

3
[n] = x
1
[n] x
2
[n] su 2N 1
punti.
Nella gura sono riportati i valori dei campioni delle sequenze ed i corri-
spondenti indici (in nero). Si vede che x

3
[2] = 3 = x

3
[2] come richiesto.
In questa condizione sar`a possibile calcolare una convoluzione lineare (che
`e poi quella utile nella pratica, per esempio nei ltraggi o nei calcoli di
correlazioni tra sequenze, come vedremo in seguito) non direttamente ma
tramite un prodotto di DFT, una trasformata per cui esistono ecienti
algoritmi di calcolo.
Si dovr`a:
allungare le sequenze da convolvere con (almeno ) N 1 zeri;
calcolarne le DFT;
farne il prodotto campione per campione;
eseguire la DFT inversa del prodotto.
Se originariamente le due sequenze hanno lunghezza diversa (N
1
, N
2
),
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 95
Figura 2.44: Prodotti di valori dei campioni delle sequenze coinvolte, da eseguire
per calcolare il campione a n = 2 della convoluzione circolare su 2N 1 = 11
punti (caso in cui la convoluzione circolare riproduce quella lineare)
baster` a costruire due sequenze della stessa lunghezza M N
1
+ N
2
1,
aggiungendo a ciascuna un diverso numero di zeri.
Solo cos` X
3
[k] = X
1
[k]X
2
[k] rappresenter` a la convoluzione lineare senza
aliasing nel tempo.
`
E ovvio, inne, che solo per sequenze di lunghezza nita si pu` o calcola-
re la convoluzione nel dominio della frequenza senza aliasing nel tempo.
Questo `e importante da tenere a mente: ad esempio la convoluzione di
una sequenza con la h[n] di un ltro IIR non `e realizzabile.
2.4.5 Lalgoritmo FFT (Fast Fourier Transform)
La Fast Fourier Transform `e un algoritmo veloce per il calcolo della DFT; lin-
venzione di questo metodo eciente ha reso la DFT interessante come strumento
pratico di analisi delle sequenze di dati. Il primo lavoro importante sullargo-
mento risale al 1965 (Cooley, James W., e John W. Tukey, An algorithm for
the machine calculation of complex Fourier series, Math. Comput. 19, 297
301, 1965).
La complessit`a del calcolo di una DFT su elaboratore si stima in termini di
numero di moltiplicazioni complesse da eseguire (si trascurano le addizioni).
Poiche la quantit`a da calcolare `e
N1

n=0
x[n]e
j
2
N
kn
96 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
con k = 0, N 1 e n = 0, N 1, si devono eseguire N moltiplicazioni N
valori di n, per un totale di N
2
moltiplicazioni complesse, equivalenti a 4N
2
moltiplicazioni reali: per N grande questo pu` o creare problemi anche con
computers relativamente potenti.
Sfruttando le propriet` a di simmetria e periodicit` a degli esponenziali complessi
si pu` o aumentare lecienza del calcolo della DFT, riducendone la complessit`a:
un tale modo ottimizzato di calcolare la DFT `e chiamato in generale FFT (Fast
Fourier Transform). In realt`a lottimizzazione pu` o essere ottenuta in pi` u modi,
per cui esistono diverse variet`a di FFT.
Come esempio esaminiamo il cosiddetto algoritmo di FFT con decimazione nel
tempo.
Supporremo che in input allalgoritmo vengano forniti dati in generale complessi.
Assumiamo che N sia pari (se non lo `e baster` a aggiungere uno zero al fondo):
allora riordinando x[n] in modo tale da porre per primi tutti gli elementi di
posto pari e poi tutti quelli di posto dispari, si pu` o esprimere la DFT originale
su N punti come combinazione lineare di 2 DFT da N/2 punti ciascuna, fatte
separatamente sugli elementi di posto pari e dispari. Il costo di combinazione `e
di N moltiplicazioni complesse e quindi la complessit`a si riduce a 2(
N
2
)
2
+N.
Se poi N `e uguale ad una potenza intera di 2, ossia N = 2

dove `e un intero,
lapproccio precedente pu` o essere applicato ricorsivamente, no ad avere una
combinazione lineare di DFT su 2 punti ciascuna.
In Fig. 2.45 vediamo, ad esempio, tutti i calcoli da eseguire per N = 8 = 2
3
.
Il calcolo `e organizzato in = 3 stadi successivi ed in ogni stadio si devono
calcolare N/2 = 4 farfalle, dove con questo termine si indica lelemento di
base dello schema, di cui un esempio `e riportato in Fig. 2.46. In questi schemi
compaiono, adiacenti ai vari rami del diagramma di usso, dei coecienti di
trasmissione W
n
N
che sono potenze intere n-esime della quantit`a W
N
= e
j
2
N
.
La loro presenza nel diagramma indica che passando in quel ramo, un dato
valore numerico viene moltiplicato per il coeciente specicato.
In ogni stadio m del calcolo (m = 1, ), a partire da una sequenza di N valori
(che per m = 1 `e quella di input e negli altri casi `e luscita dello stadio preceden-
te) viene generata unaltra sequenza di N valori. Nellultimo stadio la sequenza
generata in uscita costituisce il risultato nale.
Per ogni stadio m possiamo indicare con X
m
[l] (l = 0, N 1) la sequenza di
ingresso (ma solo per m = 1 questa coincider` a con la sequenza originale) e
con X
m+1
[l] (l = 0, N 1) la sequenza di uscita (ma solo per m = questa
coincider` a con la DFT cercata).
Il calcolo di base `e la generica farfalla del generico stadio m riportata in Fig. 2.47
(pannello a). Lintero r pu` o assumere valori da 0 a
N2
2
a seconda del valore di
m; p e q rappresentano valori di l nellintervallo l = 0, N 1.
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 97
Figura 2.45: Diagramma di usso per il calcolo di una DFT su N = 8 punti,
tramite lalgoritmo di FFT a decimazione nel tempo
Figura 2.46: Esempio di farfalla
98 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Figura 2.47: a) Farfalla che richiede due moltiplicazioni complesse e b) farfalla
semplicata che richiede una sola moltiplicazione complessa
Si hanno
2 moltiplicazioni per farfalla

N
2
farfalle per stadio
= log
2
(N) stadi.
La complessit`a `e dunque ridotta a N log
2
(N) << N
2
.
Risulta poi possibile un ulteriore risparmio di un fattore 2 nel numero delle
moltiplicazioni, modicando la farfalla di base in modo tale da avere un solo
coeciente di trasmissione diverso da 1 (cosa possibile poiche W
N
2
N
= e
j
2
N
N
2
=
e
j
= 1).
Poiche la nuova farfalla (Fig. 2.47, pannello b) richiede soltanto una moltiplica-
zione, la complessit`a nale `e (N/2) log
2
N.
Il risparmio realizzato `e notevole: ad esempio con N = 1024 = 2
10
, N
2

1.05 10
6
mentre (N/2) log
2
N =
1024
2
10 5.12 10
3
.
Inoltre lo schema fa risparmiare anche sul numero di locazioni di memoria ne-
cessarie. Potremmo pensare di aver bisogno di due registri di memoria, uno per
linput e laltro per loutput di ogni stadio. Per` o solo gli elementi p e q dellinput
sono richiesti per calcolare gli elementi p e q delloutput; sono quindi possibili
2.4. TRASFORMATA DI FOURIER DISCRETA (DFT) 99
calcoli sul posto, cio`e `e necessario un solo set di N locazioni di memoria: ogni
sequenza in uscita ad un certo stadio ricopre le stesse locazioni di memoria che
prima ospitavano lingresso, ossia luscita dello stadio precedente.
Come gi` a accennato, esistono altri algoritmi di FFT, come ad esempio
quello a decimazione in frequenza (in cui `e la trasformata che viene divisa
in sottosequenze sempre pi` u corte);
altri che sono stati studiati per N uguale ad un prodotto di fattori primi.
Tali algoritmi comportano un aumento di complessit`a rispetto al caso
N = 2

. In tutti i casi di nostro interesse, `e opportuno ricondursi a


N = 2

con un padding di zeri;


altri specici per x[n] reali: per una sequenza reale si pu` o compattare
linput in una sequenza complessa di lunghezza dimezzata che rechi nel-
la parte reale i campioni di posto pari della sequenza reale originaria e
in quella immaginaria i campioni di posto dispari. Usare semplicemente
una FFT per sequenze complesse ponendo in input {x[n]} = 0 `e meno
eciente;
ecc...
2.4.6 Applicazioni della FFT
La FFT `e utile per numerosissime applicazioni di elaborazione numerica dei
segnali, tra cui
calcolo della DFT di una sequenza,
convoluzione e deconvoluzione di sequenze (la deconvoluzione `e loperazio-
ne inversa alla convoluzione),
stima dellautocorrelazione e della cross-correlazione (v. Parte III),
stima dello spettro di potenza di un segnale a tempo discreto di lunghezza
nita, visto come porzione di una realizzazione di un processo cauale (v.
Parte III),
ecc...
In tutti i casi di nostro interesse, la sequenza da trasformare `e reale e quindi solo
met`a della trasformata `e essenziale, mentre il resto `e ridondante e pu` o essere
trovato per simmetria, ricordando che X[k] = X

[N k]. Pertanto si calcola


X[k] per k = 0,
N
2
e si deduce il resto per simmetria. Ci` o produce una ulteriore
riduzione di complessit`a.
Per una sequenza reale sono disponibili anche routines che calcolano i coecienti
non della trasformata esponenziale che abbiamo n qui usato, ma di quella con
seni e coseni, detta sviluppo trigonometrico discreto.
100 CAPITOLO 2. TRASFORMATE DI SEGNALI A TEMPO DISCRETO
Per N pari (se non lo `e aggiungiamo uno zero) lo sviluppo trigonometrico `e
x[n] =
1
N
_
_
_
a
0
+ (1)
n
a
N/2
+
N/21

k=1
_
a
k
cos
_
2
N
kn
_
+b
k
sin
_
2
N
kn
__
_
_
_
con
a
0
=
N1

n=0
x[n],
a
N/2
=
N1

n=0
(1)
n
x[n],
a
k
= 2
N1

n=0
x[n] cos
_
2
N
kn
_
= 2{X[k]},
b
k
= 2
N1

n=0
x[n] sin
_
2
N
kn
_
= 2{X[k]}.
Capitolo 3
Il campionamento dei
segnali analogici
3.1 Teorema del campionamento
In questo capitolo trattiamo di segnali a tempo discreto visti come risultato di
campionamento (sampling) a passo costante di segnali analogici.
Quando si eettua il campionamento di un segnale analogico, passando da x(t)
a x(nT
c
) = x[n], sorge il problema di denire quale T
c
occorra per rendere
rappresentativo il campionamento:
se T
c
`e troppo grande, si ha perdita di informazione sul dettaglio del
segnale;
se T
c
`e troppo piccolo, si deve immagazzinare ed elaborare un numero di
dati grande oltre il necessario.
Il passo di campionamento ottimale si determina mediante lo studio della rela-
zione tra la trasformata di Fourier del segnale continuo originale (spettro di
x(t)) e quella del segnale campionato.
Il campionamento pu` o essere visto come una modulazione di ampiezza, in cui
un treno di impulsi
+

i=
(t iT
c
)
si trasforma in un treno di impulsi modulati, come mostrato in Fig. 3.1.
Si noti che il segnale campionato `e stato indicato come x
s
(t) (e non come x[n]):
in questa trattazione risulta pi` u comodo usare il linguaggio e la notazione dei
101
102 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
0
x
(
t
)
0

(
t

i
T
c
)
0
t
x
s
(
t
)
Figura 3.1: Il campionamento di un segnale analogico come modulazione
dampiezza di un treno di impulsi
segnali a tempo continuo anche per gli impulsi. Pertanto ciascun impulso del
treno `e una funzione continua di Dirac; il singolo impulso traslato (t iT
c
)
ha unarea unitaria concentrata in t = iT
c
. Per comodit` a di notazione, conviene
assegnare un nome al segnale campionato visto come segnale analogico: appunto
x
s
(t) x(nT
c
). Si pu` o dunque scrivere il treno di impulsi modulati come
x(t)
+

i=
(t iT
c
) = x
s
(t).
Passando alle trasformate di Fourier (nel dominio della frequenza continua), il
prodotto nel dominio del tempo (di x(t) col treno di impulsi) diviene una convo-
luzione continua, ossia un integrale di convoluzione nel dominio della frequenza:
detto (f) lo spettro del treno di impulsi, che vale
(f) =
1
T
c
+

i=

_
f
i
T
c
_
,
3.1. TEOREMA DEL CAMPIONAMENTO 103
si ha
X
s
(f) = X(f) (f) =
_
+

X(f f

)(f

)df

=
=
_
+

X(f f

)
1
T
c
+

i=

_
f

i
T
c
_
df

=
=
1
T
c
+

i=
X
_
f
i
T
c
_
,
dove lultimo passaggio `e dovuto al fatto che lo scambio dellintegrale con la
sommatoria `e lecito in caso di convergenza.
Si noti come lo spettro del treno di impulsi sia ancora un treno di impulsi, questa
volta nel dominio della frequenza (Fig. 3.2): cos`, a seguito del campionamento,
...
3/T
c
2/T
c
1/T
c
0 1/T
c
2/T
c
3/T
c
...
0
f

(
f
)
Figura 3.2: Spettro di un treno di impulsi
lo spettro del segnale diviene periodico.
Infatti lo spettro X(f) del segnale analogico x(t) (Fig. 3.3), che supporremo
dotato di un generico limite di banda B
f
:
X(f) = 0, |f| > B
f
,
viene ripetuto innite volte sullasse delle frequenze ad intervalli di
1
T
c
[Hz],
divenendo periodico in frequenza (Fig. 3.4).
Si noti che pur se formalmente X
s
(f) `e la trasformata di Fourier del segnale a
tempo continuo x
s
(t), essa coincide con X(e
j
) del segnale campionato inteso
come una sequenza x[n]. Lunica dierenza `e che questultima trasformata `e
funzione di (oppure di ) mentre la prima `e funzione di f (o di ), per
cui nelle rappresentazioni grache i rispettivi assi delle ascisse (in f e ) sono
scalati luno rispetto allaltro secondo 2T
c
f = T
c
= (Fig. 3.5). Questo
scaling o normalizzazione in frequenza (il quale fa s` che f
c
=
1
T
c
divenga
c
= 1
104 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
B
f
0 B
f
0
1
X
(
f
)
Figura 3.3: Spettro del segnale analogico
1/T
c
1/(2T
c
)
0
1/(2T
c
) 1/T
c
0
1/T
c
X
s
(
f
)
Figura 3.4: Spettro del segnale campionato
o
c
= 2) `e la controparte del fatto che esiste una normalizzazione nel tempo
fra x
s
(t) e x[n]: infatti x
s
(t) ha i campioni separati di T
c
mentre x[n] li ha
separati di 1; lasse temporale `e normalizzato per un fattore T
c
, cos` come nel
dominio della frequenza (intesa come f[Hz] nel caso analogico) lasse delle ascisse
`e normalizzato per un fattore f
c
=
1
T
c
.
3.1. TEOREMA DEL CAMPIONAMENTO 105

2B
f
T
c
0 2B
f
T
c

0
1/T
c
X
[
e
x
p
(
j

)
]
Figura 3.5: Spettro del segnale campionato rappresentato come X(e
j
)
Quanto aermato si vede coi seguenti passaggi:
X
s
(f) =
_
+

x
s
(t)e
j2ft
dt =
=
_
+

_
x(t)
+

i=
(t iT
c
)
_
e
j2ft
dt =
=
_
+

_
+

i=
x(iT
c
)(t iT
c
)
_
e
j2ft
dt =
=
+

i=
x(iT
c
)
_
+

(t iT
c
)e
j2ft
dt =
=
+

i=
x(iT
c
)e
j2f(iT
c
)
dt =
=
+

i=
x[i]e
ji
X(e
j
).
Se il segnale campionato deve rappresentare bene quello di partenza, le ripe-
tizioni adiacenti degli spettri X(f) non debbono sovrapposrsi: cio`e non deve
accadere quanto rappresentato in Fig. 3.6.
Una situazione come quella della Fig. 3.6 `e detta aliasing nel dominio della
frequenza.
Chiamiamo frequenza di Nyquist la quantit`a
f
Ny
=
1
2T
c
.
106 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
1/T
c
1/(2T
c
)
0
1/(2T
c
) 1/T
c
0
1/T
c
X
s
(
f
)
f
a
f
b
Figura 3.6: Un caso in cui le ripetizioni adiacenti degli spettri di X(f) si so-
vrappongono parzialmente: nella zona di sovrapposizione lo spettro diviene pari
alla somma delle due code sovrapposte (linea rossa tratteggiata) ed `e quin-
di corrotto rispetto alla forma dello spettro vero. Sullasse delle ascisse,
1
2T
c
rappresenta la frequenza di Nyquist f
Ny
Come si vede dalla gura, in presenza di aliasing una certa frequenza f
a
del-
lo spettro vero che si trovi allesterno dellintervallo (f
Ny
, +f
Ny
) diviene
alias di (ossia indistinguibile da) unaltra frequenza f
b
appartenente allinter-
vallo (f
Ny
, +f
Ny
).
Perche non si verichi laliasing in frequenza `e richiesto che il limite di banda
B
f
del segnale sia nito e che valga la relazione (detta criterio di Nyquist)
B
f
<
1
2T
c
f
Ny
cio`e
T
c
<
1
2B
f
.
Quanto esposto `e il contenuto del cosiddetto Teorema del campionamento (Ny-
quist, 1928; Shannon, 1949)
1
che si enuncia come segue: un segnale continuo
che non contenga frequenze |f| > B
f
pu` o, in linea di principio, essere ricostruito
a partire dalla sua versione campionata, se T
c
<
1
2B
f
.
La frequenza di Nyquist `e dunque la met`a della minima frequenza di campio-
namento f
c
=
1
T
c
atta ad evitare laliasing; in altri termini, per evitarlo occor-
re prendere al minimo due campioni per ogni periodo T
min
della componente
frequenziale a frequenza pi` u alta B
f
=
1
T
min
presente nei dati: T
min
/T
c
> 2.
1
Il Teorema del campionamento `e noto come Teorema di Nyquist, ma poich`e fu anche
formulato indipendentemente da E. T. Whittaker, da Vladimir Kotelnikov e da altri autori,
`e pure noto come Teorema di Nyquist - Shannon - Kotelnikov, Whittaker - Shannon - Kotel-
nikov, Whittaker - Nyquist - Kotelnikov - Shannon, Whittaker - Kotelnikov - Shannon, etc.,
nonche come Teorema Cardinale della Teoria dellInterpolazione.
3.2. RICOSTRUZIONE DEL SEGNALE CONTINUO 107
Laliasing nel dominio della frequenza `e dunque evitabile se e solo se il segnale
ha banda limitata; ci`o `e analogo al caso dellaliasing nel dominio del tempo, che
pu` o essere evitato se e solo se la sequenza x[n], della quale si campiona la DTFT
X(e
j
), `e di durata nita.
Se un segnale a banda limitata viene campionato senza aliasing, con T
c
<
1
2B
f
, la
forma della trasformata di Fourier del segnale campionato nellintervallo f
Ny

f < f
Ny
sar`a identica a quella della trasformata di Fourier del segnale analogico
originario, salvo la moltiplicazione dellasse delle ordinate per
1
T
c
.
Questultimo fatto si capisce ricordando che X
s
(f) =
1
T
c

+
i=
X
_
f
i
T
c
_
.
Poiche nel caso discreto usiamo = 2 = 2fT
c
= T
c
oppure = fT
c
come
variabile frequenziale, si potr`a inoltre sostituire lasse delle frequenze f con un
asse oppure ; lintervallo di interesse sar`a < , o 0.5 < 0.5.
Prima di proseguire, esaminiamo esplicitamente il caso della sinusoide border-
line, ossia il caso di una sinusoide data da
x(t) = cos (2f
0
t
0
)
campionata esattamente con un T
c
=
1
2f
0
. Si ha aliasing?

0
= 0: x[n] = cos(n) = (1)
n
e quindi sembra non esserci aliasing,
ma...

0
=

2
: x[n] = sin(n) = 0 e quindi vi `e aliasing.
Ne deduciamo che non `e permesso campionare a frequenza
1
T
c
= 2f
0
.
Daltra parte, poiche lo spettro di x(t) contiene una di Dirac a f = f
0
,
campionare a T
c
=
1
2f
0
v`ola il teorema di Nyquist.
3.2 Ricostruzione del segnale continuo
Sia ora T
c
il massimo periodo di campionamento che soddisfa il criterio di
Nyquist.
Per ricostruire in linea di principio il segnale continuo x(t) a partire dai suoi
campioni x
s
(t) x[n] occorre un ltro analogico che trasmetta equamente tutte
le componenti di X
s
(f) in
1
2T
c
f <
1
2T
c
e scarti le altre.
Possiamo immaginare un sistema LTI analogico selettivo in frequenza come
quello mostrato in Fig. 3.7, ossia una H(f) ideale del tipo porta rettangolare
che in quanto ideale sar`a reale (ossia non comporter`a nessun sfasamento tra il
segnale di input e quello di output).
108 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Il valore richiesto in banda passante `e T
c
, per compensare il fattore
1
T
c
presente
nellespressione di X
s
(f).
1/(2T
c
)
0
+1/(2T
c
)
0
T
c
f
H
(
f
)
Figura 3.7: Filtro analogico ideale di ricostruzione: risposta in frequenza
La risposta allimpulso di un tale ltro analogico ideale di ricostruzione `e
h(t) =
_
+

H(f)e
j2ft
df =
=
_
+
1
2T
c

1
2T
c
T
c
e
j2ft
df =
= T
c
1
2jt
_
e
j2
1
2T
c
t
e
j2
1
2T
c
_
=
= T
c
1
2jt
2j sin
_

t
T
c
_

Sinc
_
t
T
c
_
=
sin(
t
T
c
)

t
T
c
.
La funzione Sinc
_
t
T
c
_
`e mostrata in Fig. 3.8, da cui si vede che essa passa per
lo zero ogni T
c
secondi.
Il segnale continuo ricostruito `e dato da una convoluzione in campo continuo:
x(t) = x
s
(t) h(t) =
_
+

x
s
(t

)h(t t

)dt

=
_
+

x
s
(t

)
sin
_

tt

T
c
_

tt

T
c
dt

.
La trattazione pu` o essere svolta anche in termini del segnale a tempo discreto
x[n] = x(nT
c
), anziche di x
s
(t), nel qual caso si trova
x(t) =
+

n=
x[n]
sin
_

tnT
c
T
c
_

tnT
c
T
c
=
+

n=
x[n]Sinc
_
t nT
c
T
c
_
.
3.2. RICOSTRUZIONE DEL SEGNALE CONTINUO 109
5 4 3 2 1 0 1 2 3 4 5
0.4
0.2
0
0.2
0.4
0.6
0.8
1
t/T
c
h
(
t
)
Figura 3.8: Filtro analogico ideale di ricostruzione: risposta allimpulso
Dalle formule precedenti si vede che ciascun elemento del segnale campionato
produce in output al ltro di ricostruzione una versione pesata del Sinc(t/T
c
).
Pertanto il valore di x(t) che si ottiene, per ricostruzione, in corrispondenza
di ogni t = nT
c
non `e inuenzato dai campioni adiacenti, perche h(t) passa
per lo zero ad ogni multiplo di T
c
: dovendo essere x(nT
c
) = x
s
(nT
c
), la forma
donda ricostruita deve passare per tali punti e non lo farebbe se i contributi dei
campioni adiacenti non fossero nulli.
Un ltro ideale di questo tipo non `e realizzabile; si pu` o al pi` u approssimarlo con
un ltro meno squadrato, a fase lineare (con un output un po ritardato rispetto
allinput), qualitativamente simile a quello di Fig. 3.9.
1/(2T
c
)
0
+1/(2T
c
)
0
T
c
f
|
H
(
f
)
|
Figura 3.9: Modulo della risposta in frequenza di un ltro analogico di
ricostruzione realizzabile
110 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Meglio ancora, si otterr`a un output pi` u somigliante a x(t) se si adotter` a una fre-
quenza di campionamento leggermente ridondante, ossia un T
c
< T
c,max
(dove
T
c,max
`e il massimo che soddisfa il criterio di Nyquist).
1/T
c
0
1/T
c
0
1/T
c
X
s
(
f
)
Figura 3.10: Un caso di ricostruzione con un ltro realizzabile, in cui tra le
ripetizioni spettrali adiacenti resta una banda vuota che minimizza gli eetti del
fatto che il ltro non `e squadrato come quello ideale. Il modulo della risposta in
frequenza del ltro (linea blu tratteggiata) `e disegnata in unit`a arbitrarie. Le
linee verticali verdi delimitano le bande di sicurezza vuote
Infatti, come mostrato in Fig. 3.10, in questo caso rimane tra le ripetizioni
spettrali adiacenti una banda di sicurezza vuota (compresa tra le linee verdi
in gura) cos` che il modulo della risposta in frequenza del ltro resta vicina
ad 1 nella zona di interesse e discende praticamente a zero in corrispondenza
delle ripetizioni spettrali adiacenti, nonostante la presenza di una transizione
relativamente lenta da 1 a 0 di |H(f)| del ltro realizzabile.
3.3 Aliasing e ltro anti-aliasing
Se x(t) non `e limitato in banda, cio`e se il suo spettro non va a zero per |f| = B
f
con B
f
nito, non si pu` o evitare laliasing, almeno non dopo aver campionato:
tutte le volte che si campiona e poi si ricostruisce un segnale a banda illimitata
si ha aliasing.
Infatti il contenuto di informazione di un segnale privo di limite nito di banda
non pu` o essere catturato da un campionamento fatto a velocit` a nita. Conside-
rando che tutti i segnali analogici limitati nel tempo sono illimitati in frequenza
(v. sezione 3.5), il problema appare a prima vista insormontabile. In realt`a,
nella pratica basta che entro un certo B
f
cada la maggior parte dellenergia
del segnale.
3.3. ALIASING E FILTRO ANTI-ALIASING 111
Possiamo dunque superare il problema dellaliasing soltanto:
conoscendo il limite naturale di banda del segnale (anche nel senso appros-
simato sopra indicato) e scegliendo correttamente T
c
in base al criterio di
Nyquist;
imponendo un limite di banda, ltrando x(t) con un ltro analogico passa-
basso prima di campionare (se ci`o `e sperimentalmente possibile) e sceglien-
do T
c
di conseguenza. Lerrore di troncamento in frequenza risulta minore
dellerrore causato dallaliasing. Il ltro anti-aliasing analogico `e uguale
al ltro di ricostruzione prima descritto.
Nella pratica si user` a un fattore di sicurezza, scegliendo un T
c
di un 10%
almeno pi` u basso di quello richiesto dal criterio di Nyquist.
Quando un segnale giunge nelle nostre mani gi` a campionato, per vedere se
il campionamento `e stato ben fatto guarderemo la forma dello spettro X
s
(f)
nellintervallo di ricostruzione (f
Ny
, +f
Ny
): lo spettro tende a zero per |f|
f
Ny
?
Se non `e cos` `e probabile che le componenti del segnale di frequenza |f| >
f
Ny
siano state riesse sullintervallo principale. Questa `e una situazione
molto comune: il rumore, tipicamente di alta frequenza, appiattisce lo spettro
in vicinanza di f
Ny
.
Facciamo ora un esempio di segnale sottocampionato. Gli eetti sono chiari
utilizzando un segnale sinusoidale, ossia una singola componente frequenziale
che appare nello spettro come una riga.
In Fig. 3.11, le due frecce continue blu descrivono lo spettro vero di un segnale
analogico sinusoidale x(t) = sin(2f
1
t) con f
1
= 5.5 kHz.
Se si sottocampiona, adottando un T
c
tale che f
c
=
1
T
c
= 8 kHz, la frequenza di
Nyquist assume un valore di 4 kHz, cos` che f
1
> f
N
y: f
1
`e esterna alla banda
di ricostruzione e quindi non pu` o essere vista.
Il segnale apparir` a invece come una sinusoide ad una frequenza f
0
interna al-
lintervallo (f
Ny
, +f
Ny
), a causa dellaliasing (si osservino le frecce tratteggia-
te verde e rossa entro lintervallo fondamentale, generate rispettivamente dalla
prima ripetizione dello spettro a destra, sul semiasse positivo delle frequenze,
e dalla prima a sinista, sul semiasse negativo). Sottocampionando, quindi, le
due righe vere vengono eliminate e si generano nella banda (f
Ny
, +f
Ny
) due
righe false derivanti dalla periodicizzazione spettrale.
La frequenza f
0
vale
1
T
c
f
1
= 8 - 5.5 = 2.5 kHz. In altri termini, f
1
=
1
T
c
f
0
`e alias della frequenza f
0
compresa nellintervallo fondamentale.
La prima ripetizione dello spettro sul semiasse positivo (frecce tratteggiate ver-
di) non d`a solo la riga a 2.5 kHz, ma anche una seconda riga a
1
T
c
+ f
1
= 8
+ 5.5 kHz = 13.5 kHz =
2
T
c
f
0
, mentre la prima ripetizione dello spettro sul
112 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Figura 3.11: Esempio di aliasing: un segnale analogico sinusoidale di frequenza
f
1
= 5.5 kHz viene sottocampionato adottando una frequenza di campionamento
di 8 kHz (frequenza di Nyquist: 4 kHz)
semiasse negativo (frecce tratteggiate rosse) non d`a solo la riga a -2.5 kHz, ma
anche una seconda riga a -13.5 kHz. Cos` anche
2
T
c
f
0
`e alias di f
0
.
Laliasing `e evidente anche nel dominio del tempo, come mostrato in Fig. 3.12.
In realt`a, tutte le innite ripetizioni spettrali sui due semiassi, e non solo le
t
x
(
t
)
Figura 3.12: Aliasing in frequenza visto nel dominio del tempo: la sinusoide a
5.5 kHz (linea blu) se sottocampionata (con frequenza di campionamento di 8
kHz) appare come una sinusoide a 2.5 kHz (linea verde)
3.4. PRINCIPIO DI INDETERMINAZIONE 113
prime, generano degli alias di f
0
. Limitandosi a considerare solo il semiasse
positivo, le frequenze che sono alias di una frequenza f
0
compresa nellintervallo
principale o fondamentale sono esprimibili come
f
k
=
k
T
c
f
0
= kf
c
f
0
= 2kf
Ny
f
0
con k = (1, ) intero.
Cos` un numero innito di sinusoidi a tempo continuo corrisponde allo stesso
segnale a tempo discreto.
La situazione `e ulteriormente illustrata dalla Fig. 3.13.
Figura 3.13: Il semiasse positivo delle frequenze con la posizione delle frequenze
f
k
che sono alias di una f
0
compresa nellintervallo principale. I punti A, B, C,
D indicano multipli interi della frequenza di Nyquist
Laliasing `e chiamato pure folding(ossia ripiegamento) dello spettro, perch`e
corrisponde al ripiegamento su se stesso dellasse f, come visualizzato nella
Fig. 3.14: se lasse di Fig. 3.13 viene piegato in corrispondenza dei punti A, B,
C, D..., tutti gli alias di f
0
si allineano al di sopra di f
0
.
Concludiamo la discussione dellaliasing in frequenza con un ulteriore esempio
graco di come le frequenze alias di f
0
si riettono in f
0
(Fig. 3.15, 3.16 e 3.17).
3.4 Principio di indeterminazione
Avendo accennato nella discussione precedente alla relazione che esiste fra le
estensioni di un segnale analogico nei domini duali del tempo e della frequenza,
ed al concetto di limite di banda esatto o approssimato, inseriamo qui alcune
114 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Figura 3.14: Il semiasse positivo delle frequenze ripiegato su se stesso ad ogni
multiplo di f
Ny
, con le frequenze f
k
che sono alias di una f
0
tutte allineate al
di sopra di questultima
Figura 3.15: Una ulteriore rappresentazione dellaliasing in frequenza: caso in
cui laliasing `e dovuto alla prima ripetizione sul semiasse positivo
3.4. PRINCIPIO DI INDETERMINAZIONE 115
Figura 3.16: Una ulteriore rappresentazione dellaliasing in frequenza: caso in
cui laliasing `e dovuto alla prima ripetizione sul semiasse negativo
Figura 3.17: Una ulteriore rappresentazione dellaliasing in frequenza: caso in
cui laliasing `e dovuto alla seconda ripetizione sul semiasse positivo
nozioni di teoria dei segnali analogici che illustrano questi punti in maggiore
dettaglio e che inoltre ci saranno utili in seguito, quando tratteremo la teoria
della Trasformata di Wavelet.
Come detto, le estensioni di un segnale analogico nei domini duali del tempo
e della frequenza non sono indipendenti luna dallaltra e per quanticare la
relazione tra esse si deniscono nella teoria dei segnali analogici, per un generico
segnale w(t), le quantit`a di seguito elencate:
1. centro
t

=
_
+

tw
2
(t)dt
_
+

w
2
(t)dt
.
Si noti che lintegrale a denominatore rappresenta lenergia del segna-
le w(t), che formalmente ha durata innita. Qualora il segnale fosse
complesso, nella formula ne comparirebbe il modulo quadro;
116 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
2. raggio o durata quadratica media o apertura

t
=

_
_
+

(t t

)
2
w
2
(t)dt
_
+

w
2
(t)dt
;
3. larghezza quadratica media di banda

f
=

_
_
+

f
2
|W(f)|
2
df
_
+

|W(f)|
2
df
,
dove lintegrale a denominatore rappresenta lenergia del segnale nel do-
minio della frequenza, che per la relazione di Parseval `e uguale allenergia
nel dominio del tempo.
Si dimostra che

f
1/(4)
per un segnale qualsiasi (o per una qualsiasi nestra temporale, entit`a intro-
dotta nel seguito).
In questultima formula, il segno di uguaglianza vale solo se landamento di
w(t) `e di tipo gaussiano, cio`e e

t
2
2T
2
dove T `e la semilarghezza a met`a altez-
za (oppure pu` o trattarsi di una funzione oscillatoria modulata da una cupola
gaussiana, come accade nella teoria delle wavelets).
La trasformata di Fourier di un segnale w(t) gaussiano `e ancora una gaussiana,
con una semilarghezza a met`a altezza F legata alla analoga quantit`a T nel
dominio del tempo dalla relazione FT = 1/(2). Poiche si trova che
t
= T/

2
e
f
= F/

2, se ne deduce appunto
t

f
= 1/(4).
Talvolta il principio viene espresso in termini di frequenza angolare analogica
= 2f, divenendo
t

1/2.
Pertanto, come anticipato in precedenza,
un segnale molto concentrato nel tempo `e a banda molto larga
un segnale a banda stretta `e molto disperso nel tempo.
Al limite, una pura sinusoide avr`a raggio innito, un impulso istantaneo avr`a
larghezza di banda innita.
La Fig. 3.18 riporta, come esempio, segnali gaussiani di diversa larghezza a met`a
altezza ed un segnale sinusoidale, accompagnati dai relativi spettri.
3.5. SEGNALI ANALOGICI ASUPPORTOLIMITATOINTEMPOE FREQUENZA117
0
t
w
(
t
)
0
f
W
(
f
)
0
t
s
i
n
(
2

f
0
t
)
f
0
0 +f
0
f
S
p
e
t
t
r
o
Figura 3.18: Segnali gaussiani e segnale sinusoidale (a sinistra) e relativi spettri
(a destra)
3.5 Segnali analogici a supporto limitato in tem-
po e frequenza
Un segnale a supporto limitato in tempo `e illimitato in frequenza; un segnale a
supporto limitato in frequenza `e illimitato in tempo.
Per vedere questo consideriamo un segnale analogico a supporto temporale il-
limitato x

(t) e osserviamolo attraverso una porta rettangolare simmetrica


p
T
(t) che ne ritaglia un segmento esteso tra T/2 e +T/2, dove T `e la larghezza
della porta (Fig. 3.19).

T
2
0
+
T
2
0
1
t
p
T
(
t
)
Figura 3.19: Porta rettangolare simmetrica di larghezza T
118 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Il segnale risultante, x(t) = x

(t)p
T
(t), ha supporto temporale limitato, come
la porta stessa.
La trasformata di Fourier di x(t) `e
X(f) = X

(f) P
T
(f) = X

(f)
sin (fT)
f
X

(f) TSinc(fT)
dove il simbolo indica una convoluzione nel dominio della frequenza analogica,
ossia un integrale di convoluzione. Poiche Sinc() ha supporto illimitato in
frequenza, anche X(f) lo ha.
Dalla formula precedente vediamo che la forma dello spettro di x(t), generico
segnale a supporto temporale limitato, `e determinata - oltre che, ovviamente,
da X

(f) - dalla forma dello spettro della porta. A sua volta, come mostrato
nelle Fig. 3.20, 3.21 e 3.22, P
T
(f) varia al variare della larghezza della porta
temporale.
Nelle gure citate `e illustrato il comportamento della trasformata della porta
rettangolare, al variare della larghezza della porta stessa (T
0
, 2T
0
, 4T
0
).
Si vede che man mano che la porta si allarga (il che signica non solo che
il suo supporto temporale cresce, ma anche che diviene meno concentrata nel
tempo) la trasformata si restringe, divenendo pi` u concentrata in frequenza
anche se il suo supporto temporale `e comunque illimitato. Ad esempio, al

T
2
0
+
T
2
0
1
t
p
T
(
t
)
T = T
0

1
T
0
+
1
T
0
T
f
P
T
(
f
)
Figura 3.20: Porta rettangolare simmetrica di larghezza T
0
e sua trasformata
raddoppiare della larghezza della porta temporale p
T
, si dimezza la larghezza
del lobo principale di P
T
, in accordo con la propriet` a di scaling della trasformata
di Fourier analogica:
x(kt)
1
|k|
X(f/k)
con k = 1, 1/2, 1/4 . . .
3.5. SEGNALI ANALOGICI ASUPPORTOLIMITATOINTEMPOE FREQUENZA119

T
2
0
+
T
2
0
1
t
p
T
(
t
)
T = 2T
0

1
T
0
+
1
T
0
T
f
P
T
(
f
)
Figura 3.21: Porta rettangolare simmetrica di larghezza 2T
0
e sua trasformata

T
2
0
+
T
2
0
1
t
p
T
(
t
)
T = 4T
0

1
T
0
+
1
T
0
T
f
P
T
(
f
)
Figura 3.22: Porta rettangolare simmetrica di larghezza 4T
0
e sua trasformata
Vale anche linverso della propriet` a: se il supporto temporale del segnale si
restringe, lo spettro si allarga. Ci serviremo di questa propriet` a nella teoria
delle wavelets.
Si noti bene che i concetti di supporto limitato e concentrazione in tempo o
frequenza sono ben distinti ed `e precisamente la seconda caratteristica ad essere
oggetto del principio di indeterminazione.
Supporto limitato signica che il segnale considerato `e esattamente zero
al di fuori di un certo intervallo di tempo o frequenza.
Concentrazione signica che la maggior parte dellenergia del segnale si
concentra in un certo intervallo, quanticabile con la durata quadratica
media (o con la larghezza quadratica media di banda se siamo nel dominio
della frequenza).
120 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
La porta ha supporto limitato ed `e anche concentrata in tempo.
Pertanto
1. il supporto del suo spettro `e illimitato;
2. il suo spettro `e relativamente poco concentrato in frequenza, e lo `e tanto
meno quanto pi` u aumenta la concentrazione temporale, ossia la strettez-
za della porta.
Normalmente `e sempre vero (non solo per la porta rettangolare) che un supporto
limitato implica concentrazione, ma non `e vero il contrario.
3.6 Relazioni tra le variabili frequenziali
Chiudiamo questa parte di base con un riepilogo delle relazioni che intercorrono
fra le variabili usate per i segnali a tempo continuo ed a tempo discreto nel
dominio della frequenza.
Il riferimento `e sempre un segnale analogico che viene campionato: x[n] =
x(nT
c
).
Abbiamo:
= frequenza angolare (o pulsazione) discreta.
`
E un angolo nel piano
z ed `e quindi adimensionale. Si misura in rad/n;
= frequenza angolare (o pulsazione) analogica. Ha le dimensioni dellin-
verso di un tempo e si misura in rad/s. La relazione tra le due pulsazioni
`e = T
c
;
= frequenza (discreta) adimensionale o normalizzata.
`
E legata a
da =

2
;
f = frequenza analogica. Ha le dimensioni dellinverso di un tempo e si
misura in Hz = s
1
. La relazione tra le due frequenze `e = fT
c
.
Esempio:
sin(t) = sin(2ft) = sin(2fnT
c
) = sin
_

T
c
nT
c
_
= sin(n) = sin(2n).
La DTFT di un segnale discreto viene campionata ad equispaziate di
=
2
N
;
3.6. RELAZIONI TRA LE VARIABILI FREQUENZIALI 121
pertanto le frequenze angolari discrete di campionamento sono

k
= k =
2
N
k.
La Fig. 3.23 illustra il legame tra i valori dellindice frequenziale k (numero del-
larmonica) e quelli di . In corrispondenza ai valori di
k
, le sono equispaziate
Figura 3.23: I valori di k e di per il campionamento della DTFT di un segnale
a tempo discreto
di
=
1
N
e quindi

k
= k =
k
N
.
Dato un certo T
c
, le frequenze analogiche di campionamento della DTFT sono
equispaziate di
f =
1
NT
c
(inverso della durata del record) e quindi
f
k
= kf =
k
NT
c
;
le pulsazioni analogiche sono separate di
=
1
2NT
c
per cui

k
= k = k

T
c
=
k
2NT
c
.
122 CAPITOLO 3. IL CAMPIONAMENTO DEI SEGNALI ANALOGICI
Veniamo ora alla periodicit` a di X(e
j
). Lelenco che segue riporta per ogni
variabile frequenziale i valori degli estremi dellintervallo principale:
in k,
N
2
k <
N
2
oppure 0 k < N;
in , < oppure 0 < 2;
in , 0.5 < 0.5 oppure 0 < 1;
in ,

T
c
<

T
c
oppure 0 <
2
T
c
;
in f,
1
2T
c
f <
1
2T
c
oppure 0 f <
1
T
c
.
Possiamo quindi anche porre:
k
Ny
=
N
2
;

Ny
= [rad/n];

Ny
= 0.5 [cicli/n];

Ny
=

T
c
[rad/s];
f
Ny
=
1
2T
c
[Hz].
La Fig. 3.24 chiarisce inne la precisa corrispondenza tra il numero dellarmonica
k ed i valori della frequenza f in Hz negli intervalli 0, 2f
Ny
oppure f
Ny
, f
Ny
.
Figura 3.24: I valori di k e di f per il campionamento della DTFT di un segnale
a tempo discreto
Parte II
Introduzione ai ltri
numerici
123
Capitolo 4
Caratteristiche dei ltri
numerici
4.1 Nozioni generali
Filtrare un segnale signica, genericamente, cambiarne le caratteristiche nel
dominio della frequenza. Una denizione formale `e dicile da dare; meglio
citare alcuni esempi di operazioni di ltraggio.
Selezione in frequenza: se il segnale di ingresso contiene contributi fre-
quenziali in certi intervalli di , si desidera modicare in uscita tali con-
tributi, sopprimendo, ad esempio, quelli in una certa banda di frequen-
za, esaltandone altri ecc... Per questo scopo si usano ltri selettivi in
frequenza.
Operazioni speciali come, ad esempio, integrazione e dierenziazione di
segnali: si usano ltri speciali.
Soppressione del rumore che contamina un segnale utile (denoising): per
questo scopo sono stati largamente usati in passato ltri numerici del
genere di quelli che descriveremo nel presente capitolo. Attualmente sono
spesso preferite per il denoising altre tecniche, come quelle basate sulla
Trasformata di Wavelet.
Noi ci occuperemo esclusivamente di ltri selettivi in frequenza, descrivendone
le caratteristiche e studiandone un metodo di progetto di particolare interesse.
Limiteremo la nostra attenzione a ltri che siano sistemi LTI stabili, reali (cio`e
con risposta allimpulso reale) e causali, descrivibili mediante H(z) raziona-
li. Questi sistemi vengono indicati con lacronimo RCSR, che sta appunto per
Reali-Causali-Stabili-Razionali.
124
4.2. LA RISPOSTA DI AMPIEZZA DEI FILTRI NUMERICI 125
Si ricordi che per un ltro reale, H(e
j
) ha modulo pari e fase dispari; ci si pu` o
quindi limitare a considerare lintervallo 0 .
Un ltro in ambito discreto viene generalmente specicato dando la sua funzione
di trasferimento, che supponiamo sia razionale, con la relativa ROC; questo
equivale a dare una LCCDE, unita, per esempio, a condizioni inziali di riposo.
Dato che il sistema considerato `e stabile, H(z) converge sul cerchio unitario ed
ivi rappresenta la risposta in frequenza H(e
j
) del sistema. Questo ammesso che
si tratti di funzioni continue, come accade per i ltri realizzabili nella pratica;
i ltri ideali selettivi in frequenza, discontinui, rappresentano, come gi` a visto,
casi particolari per cui la risposta in frequenza converge solo in media.
Della H(e
j
) si considerano separatamente:
la risposta di ampiezza |H(e
j
)|;
la risposta di fase.
Attenzione: anche in applicazioni riguardanti segnali continui campionati, T
c
non gioca alcun ruolo nel progetto di ltri, che vengono specicati in termini
discreti, in funzione di (o di ).
4.2 La risposta di ampiezza dei ltri numerici
Si tratta di una funzione reale della frequenza, intrinsecamente non negativa,
che nei casi ideali potr`a avere dei punti di discontinuit` a di salto, mentre nei casi
reali (di applicazione pratica) dovr`a essere una funzione continua.
Per esprimere la risposta di ampiezza e gracarla si possono usare unit`a normali
o logaritmiche. In particolare, in questo secondo caso si usa riferirsi al modulo
quadro di H(e
j
).
Il quadrato dellampiezza, |H(e
j
)|
2
, viene espresso in dB (deciBel) come
10 log
10
|H(e
j
)|
2
= 20 log
10
|H(e
j
)|.
Si noti che zero dB corrispondono a |H(e
j
)| = 1 e che |H(e
j
)| = 10
m
corrisponde a 20m [dB].
Inoltre |H(e
j
)| = 2
m
corrisponde a circa 6m [dB] perche
20 log
10
2
m
= 20 log
10
2 log
2
2
m
20 0.3 m 6m.
Quando |H(e
j
)| < 1, la corrispondente quantit`a in dB `e negativa, come ad
esempio nella banda di attenuazione di un ltro selettivo in frequenza. Spesso
126 CAPITOLO 4. CARATTERISTICHE DEI FILTRI NUMERICI
allora si usa la stessa quantit`a cambiata di segno, ossia
20 log
10
|H(e
j
)|,
detta attenuazione (in dB), che sar`a maggiore di zero se |H(e
j
)| < 1.
Per esempio, |H(e
j
)| = 0.0001 corrisponde ad una attenuazione di 20
(4) = +80 dB.
Si osservi che la relazione ingresso-uscita di un LTI nel dominio della frequenza,
Y (e
j
) = H(e
j
)X(e
j
),
diviene una somma in scala logaritmica, per cui la risposta di ampiezza in dB,
aggiunta allampiezza in dB della trasformata di Fourier del segnale di input,
d`a lampiezza in dB della trasformata di Fourier del segnale di output.
Un ltro numerico selettivo in frequenza lascia passare certe componenti fre-
quenziali del segnale di ingresso e ne attenua altre.
La sua risposta di ampiezza potr`a essere classicata in relazione a quattro pro-
totipi fondamentali (ideali) di ltri selettivi: questi si rivelano non realizzabili
nella pratica ma costituiscono un utile riferimento teorico.
Le risposte di ampiezza dei quattro prototipi ideali di ltri selettivi sono illustra-
te, per ricapitolare, in Fig. 4.1. Un intervallo in cui la risposta desiderata `e uni-
taria viene chiamato banda passante; un intervallo in cui la risposta desiderata
`e nulla viene chiamato banda attenuata (o banda oscura, o stoppata).
Si noti che dovendo parlare in generale di un ltro selettivo in frequenza, si parla
di un passa-banda, perche il passa-banda riassume in se, come casi particolari,
anche il passa-alto ed il passa-basso.
Casi pi` u generali comprenderanno ltri multibanda , con varie bande passanti ed
attenuate, in ognuna delle quali in genere si desidera che |H(e
j
)| sia costante,
ma non necessariamente unitaria.
Quello mostrato in Fig. 4.1 sar`a, in genere, landamento desiderato per la rispo-
sta di ampiezza di un ltro che si intende costruire, ma nella realt`a nessun ltro
pu` o avere caratteristiche cos` squadrate.
Infatti come conseguenza di un teorema, dovuto a Paley-Wiener e riguardante
la risposta in frequenza di un ltro causale, |H(e
j
)| pu` o valere zero a qualche
valore di isolato ma non su una banda continua nita di valori di ; per
contro, nessun ltro ideale pu` o essere causale.
Un ltro reale e causale (si usa il termine realizzabile) avr`a |H(e
j
)| di anda-
mento non costante nelle bande passante ed attenuata (tipicamente, andamento
monot`ono crescente o decrescente, oppure andamento oscillante) e possieder`a
una banda di transizione di larghezza non nulla, interposta fra la banda passante
e quella attenuata, in cui di solito si richiede andamento monot`ono.
4
.
2
.
L
A
R
I
S
P
O
S
T
A
D
I
A
M
P
I
E
Z
Z
A
D
E
I
F
I
L
T
R
I
N
U
M
E
R
I
C
I
1
2
7
Figura 4.1: I quattro prototipi ideali di ltro selettivo in frequenza: a) passa-basso, b) passa-alto, c) passa-banda, d) ferma-banda
128 CAPITOLO 4. CARATTERISTICHE DEI FILTRI NUMERICI
Per quanto riguarda la risposta di fase, evidentemente un ltro ideale dovrebbe
implicare sfasamento nullo tra ingresso ed uscita, ma per un sistema causale
una fase nulla per H(e
j
) `e impossibile, per cui si accetta una fase non nulla,
accontentandosi, quando possibile, di una dipendenza lineare della fase da .
Per comprendere le problematiche relative alla fase di H(e
j
), esaminiamo ora
largomento in modo generale.
4.3 La risposta di fase dei ltri numerici
1. Discontinuit` a di fase
Data una risposta in frequenza H(e
j
), che supponiamo appartenere ad
in sistema LTI RCSR, la risposta di fase ad una certa `e langolo di fase
del numero H(e
j
), che, quando calcolato da un opportuno software, `e il
valore principale dellangolo stesso, ossia langolo (, ) tale che
() = arg[H(e
j
)]
_
arctan 2
_
[H(e
j
)], [H(e
j
)]
_
se |H(e
j
)| = 0,
indenita se |H(e
j
)| = 0,
dove arctan 2(y, x) = `e per denizione lunico angolo (, ) per il
quale
cos =
x
_
x
2
+y
2
, sin =
y
_
x
2
+y
2
.
Qualsiasi altro angolo legato al precedente da
H(e
j
) = arg[H(e
j
)] + 2r(),
dove r() `e un intero positivo o negativo che pu` o essere diverso per ogni
, dar` a, insieme ad |H(e
j
)|, il corretto valore complesso di H(e
j
).
Ora, arg[H(e
j
)] pu` o essere una funzione discontinua: per meglio dire,
poiche il ltro `e RCSR, H(e
j
) `e una funzione continua e questo comporta
che anche () lo sia, eccetto in due casi:
(a) nei punti
0
a cui [H(e
j
)] < 0 e [H(e
j
)] = 0 si ha (
0
) = +
a causa della denizione di arctan 2. Percio se [H(e
j
)] a

0
o
+
0
(o ad entrambe) `e negativa, essendo (
+
0
) e/o (

0
) circa uguali a
, si vericher`a un salto di 2 (Fig. 4.2 e 4.3);
(b) nei punti
0
in cui |H(e
j
)| = 0, la fase non `e denita.
Si dimostra che per funzioni H(e
j
) = H(z)|
z=e
j razionali il numero di
punti di discontinuit` a di fase nellintervallo principale di `e necessaria-
mente nito; nei punti di discontinuit` a il salto di fase `e 2 (caso a) oppure
(caso b).
Questultimo salto di `e legato al fatto che |H(e
j
)| `e forzatamente non
negativa, come mostrato in Fig. 4.4. La gura evidenzia gli zeri della
risposta di ampiezza, che corrispondono a salti di nella fase. Si pu` o
4.3. LA RISPOSTA DI FASE DEI FILTRI NUMERICI 129
Figura 4.2: Lintorno di (
0
) in cui si vericano i salti di 2
Figura 4.3: Tipico andamento del valore principale dellangolo di fase
arg[H(e
j
)]
130 CAPITOLO 4. CARATTERISTICHE DEI FILTRI NUMERICI
Figura 4.4: Zeri della risposta in frequenza, che corrispondono a salti di nella
fase
dimostrare che se un dato zero ha molteplici` a m, allora se m `e pari la fase
resta continua, mentre se m `e dispari la fase fa un salto di .
Per ovviare a questi problemi, al posto di H(e
j
) = |H(e
j
)|e
j()
viene
usata la rappresentazione in fase continua
H(e
j
) = H()e
j()
dove H() `e reale ma non necessariamente positiva e () `e continua.
La funzione H() viene chiamata funzione dampiezza e coincide con la
cosiddetta risposta a fase nulla del ltro, nel senso che tutta linformazione
di fase `e contenuta nel termine non discontinuo e
j()
. La risposta a fase
nulla `e usata, tra laltro, nella tecnica di progetto che esamineremo.
Le funzioni H() e () vengono costruite in modo tale da preservare la
continuit` a di () ad ogni punto di discontinuit` a di (), inclusi quelli
con salto di 2. Il valore di () viene reso unico imponendo la condizione
0 (0) < ; naturalmente ora () potr`a uscire dallintervallo (, ).
Le Fig. 4.5 e 4.6 illustrano rispettivamente il modo per ovviare ad un salto
di e quello per ovviare a salti di 2 mediante aggiunta a () di multipli
interi di 2.
2. Fase lineare
Un ltro tale che
H(e
j
) = H()e
j
con =costante `e detto a fase lineare in .
La costante = ()/ in generale `e un numero reale che viene chiamato
ritardo di fase [campioni].
In particolare, un ltro con H(e
j
) = e
j
`e detto ritardatore ideale. Il
nome deriva dal fatto che un ltro (sia in generale un passa-banda) che
4.3. LA RISPOSTA DI FASE DEI FILTRI NUMERICI 131
Figura 4.5: Come si pu` o ovviare ad un salto di nella fase
Figura 4.6: Come si pu` o ovviare a salti di 2 nella fase
132 CAPITOLO 4. CARATTERISTICHE DEI FILTRI NUMERICI
in banda passante abbia una tale risposta in frequenza applica un puro
ritardo al segnale di ingresso: posto infatti
H(e
j
) =
_
e
j
per
c1

c2
,
0 altrove,
cio`e scelta una risposta in frequenza dotata di un modulo con andamento
ideale costante a tratti (quindi non realizzabile ma valida come esempio), si
avr`a, per un segnale con composizione frequenziale compresa nella banda
passante,
y[n] =
1
2
_

c2

c1
H(e
j
)X(e
j
)e
jn
d =
=
1
2
_

c2

c1
X(e
j
)e
j(n)
d =
= x[n ].
Pertanto linput `e come loutput, ma ritardato di campioni: se `e fra-
zionario il sistema interpola a valori non interi del tempo discreto mentre
se `e intero si ha un semplice ritardo di passi. In ogni caso, il segnale
di uscita `e una copia ritardata e non distorta del segnale di ingresso: si
parla di assenza di distorsione di fase.
Lassenza di distorsione di fase `e spesso auspicabile, per esempio nei casi
in cui occorra confrontare il comportamento di due segnali in una certa
banda. Infatti in tal caso per studiare relazioni di lead-lag (quale dei due
segnali guida (leads) le variazioni e quale segue (lags)?), e quindi -in
denitiva - relazioni di causa-eetto, `e importante la fase relativa delle
varie componenti frequenziali dei due segnali. Per questa ragione, non
potendo avere ltri realizzabili a fase nulla, si accettano volentieri ltri
con fase lineare, in particolare con intero o semintero.
3. Fase lineare generalizzata
Talvolta `e utile considerare fasi non strettamente proporzionali a ma
comunque lineari in :
() =
0

g
con
0
e
g
costanti.
Il corrispondente ritardatore ideale in (0, ) ha in questo caso risposta in
frequenza
H(e
j
) =
_
e
j(
0

g
)
per
c1

c2
,
0 altrove,
ossia ancora una risposta in frequenza dotata di un modulo con andamento
ideale costante a tratti, quindi non realizzabile ma utile come esempio.
In questo caso, anziche di ritardo di fase si parla per
g
di ritardo di gruppo
[campioni]; il concetto `e legato alleetto che il ltro ritardatore ha sulla
fase di un segnale a banda stretta, ossia un segnale modulato del tipo
x
1
[n] = x[n] cos(
0
n),
4.3. LA RISPOSTA DI FASE DEI FILTRI NUMERICI 133
in cui x[n] `e il segnale modulante o inviluppo e
0
`e la frequenza portante,
e la cui trasformata `e diversa da zero solo nellintorno di =
0
. I segnali
modulati sono importanti nellingegneria delle telecomunicazioni: spesso
in quel campo si eettua loperazione di passare da un segnale a banda
relativamente stretta x[n] a x
1
[n], in modo da trasportare lo spettro di
x[n] nellintorno di
0
e permettergli cos` di passare attraverso una rete
che consente il passaggio di frequenze prossime a
0
.
Supponiamo di applicare a x
1
[n] un ritardatore ideale la cui banda pas-
sante contenga lintorno di
0
in cui giace lo spettro del segnale modulato.
Si pu` o allora mostrare che luscita y[n] `e ancora un segnale modulato, tale
che linviluppo `e una versione non distorta ma solo ritardata dellinvilup-
po dellingresso. La costante di fase
0
inuenza la parte di frequenza
portante ma non linviluppo: precisamente si ha
y[n] = x[n
g
] cos[
0
(n
g
) +
0
].
Il ritardo di gruppo
g
dellinviluppo del segnale a banda stretta, avente
trasformata di Fourier centrata su =
0
, `e dato dalla pendenza della fase
continua () del ritardatore valutata nellintorno della
0
di interesse e
cambiata di segno:

g
=
d()
d
.
Se
g
`e intero, si ha un ritardo delloutput rispetto allinput di
g
campioni,
mentre se `e frazionario si ha interpolazione a valori frazionari del tempo
discreto.
Un sistema che ammette la rappresentazione in fase continua
H(e
j
) = H()e
j(
0

g
)
con
0
e
g
costanti `e detto a fase lineare generalizzata (GLP= Generalized
Linear Phase).
4. Restrizioni sui ltri a GLP
La periodicit` a di H(e
j
) e la realt`a di h[n] impongono restrizioni sui
parametri
0
e
g
di un ltro RCSR a GLP.
Poich`e H(e
j
) `e periodica con periodo 2,
H()e
j(
0

g
)
= H( + 2)e
j(
0

g
2
g
)
e quindi
H() = H( + 2)e
j2
g
.
Ora H() deve essere reale; per questo `e suciente che 2
g
sia intero,
cio`e che
g
sia intero o semi-intero.
Distinguiamo cos` i due casi:
(a)
g
intero: H() = H( + 2), ossia H() periodica con periodo
2;
(b)
g
semi-intero: H() = H( + 2), H() = H( + 4), ossia
H() periodica con periodo 4.
134 CAPITOLO 4. CARATTERISTICHE DEI FILTRI NUMERICI
Poich`e h[n] `e reale, H(e
j
) = H

(e
j
); quindi
H()e
j(
0
+
g
)
= H()e
j(
0

g
)
da cui
e
j2
0
=
H()
H()
.
Distinguiamo quindi i due casi:
(a)
0
= 0: H() = H(), ossia H() funzione pari e =
g
=
costante;
(b)
0
= /2: H() = H(), ossia H() funzione dispari e
g
=
costante.
Pertanto i ltri numerici reali a GLP esistono in quattro tipi:
Tipo I, =
g
intero,
0
= 0;
Tipo II, =
g
semi-intero,
0
= 0;
Tipo III,
g
intero,
0
= /2;
Tipo IV,
g
semi-intero,
0
= /2;
di cui i primi due hanno ritardo di fase costante e gli ultimi due hanno
ritardo di gruppo costante.
La causalit`a impone poi ulteriori restrizioni sulla forma della risposta
allimpulso dei ltri a GLP.
Un ltro a GLP soddisfa H(e
j
) = H()e
j(
0

g
)
, per cui si ha
H() = H(e
j
)e
j(
0

g
)
.
Allora
se
0
= 0 (Tipi I e II)
h[2
g
n] =
1
2
_

H(e
j
)e
j(2
g
n)
d =
=
1
2
_

H()e
j(
g
n)
d,
dove si `e sostituita lespressione H(e
j
) = H()e
j(
0

g
)
nella prima
riga di equazione e poi si `e tenuto conto del fatto che
0
= 0 e che
j
g
+ 2j
g
jn = j(
g
n).
Complesso-coniugando lespressione ottenuta (si ricordi che H() `e
reale e cos` h[n]) si ha
h[2
g
n] =
1
2
_

H()e
j(n
g
)
d =
=
1
2
_

H(e
j
)e
jn
d = h[n],
dove si `e sostituito nella prima riga H() = H(e
j
)e
j(
0

g
)
=
H(e
j
)e
j
g
.
Ma se il ltro `e causale, h[n] = 0 per n < 0 e quindi anche h[n] = 0
per n > 2
g
.
Se ne deduce che
4.3. LA RISPOSTA DI FASE DEI FILTRI NUMERICI 135
il ltro deve essere FIR,
il suo ordine deve essere N 1 = 2
g
,
la risposta allimpulso deve soddisfare la condizione di simmetria
h[n] = h[N 1 n].
Questa situazione `e illustrata nella Fig. 4.7;
3 2 1 0 1 2 3 4 5 6 7
n
h
[
n
]

g
= 2
N 1 = 2
g
= 4
Figura 4.7: Relazione tra
g
e ordine N 1 di un ltro FIR: N 1 = 2
g
se
0
= /2 (Tipi III e IV)
e
j
0
= e
j/2
= +j e quindi H(e
j
) = +jH()e
j
g
per cui
h[2
g
n] =
1
2
_

H(e
j
)e
j(2
g
n)
d =
=
j
2
_

H()e
j(
g
n)
d.
Complesso-coniugando lespressione ottenuta si ha
h[2
g
n] =
j
2
_

H()e
j(n
g
)
d =
=
1
2
_

H(e
j
)e
jn
d = h[n].
Ma se il ltro `e causale, h[n] = 0 per n < 0 e quindi anche h[n] = 0
per n > 2
g
.
Se ne deduce che
il ltro deve essere FIR,
il suo ordine deve essere N 1 = 2
g
,
la risposta allimpulso deve soddisfare la condizione di antisim-
metria
h[n] = h[N 1 n].
In conclusione, solo per ltri FIR `e possibile la fase esattamente lineare o
lineare generalizzata.
Capitolo 5
Progetto di ltri numerici
5.1 Considerazioni preliminari
Il progetto di un ltro numerico `e un processo che richiede tre passi fondamen-
tali.
1. Specica delle propriet` a desiderate del sistema; per esempio, che si tratti di
un sistema LTI RCSR che opera un preciso tipo di selezione in frequenza;
sulla risposta in frequenza verranno espressi vincoli sia di ampiezza sia,
eventualmente, di fase.
2. Approssimazione di tali speciche per mezzo di un opportuno sistema a
tempo discreto realizzabile.
Si tratta di scegliere un metodo di progetto che consenta di approssimare
il ltro desiderato, soddisfacendone le speciche secondo un determina-
to criterio (che caratterizza il metodo di progetto scelto), con un ltro
realizzabile della minima complessit`a possibile (cio`e col minimo ordine).
Questo passo implica:
selezionare una classe di ltri atta ad approssimare la H(e
j
) desi-
derata; ad esempio: ltri FIR a fase lineare (o lineare generalizzata);
individuare un metodo di progetto atto a trovare, allinterno di tale
classe, il membro che meglio si adegua alle speciche, secondo un
certo criterio e con complessit`a ssata;
sintetizzare tale membro migliore, ottenendone la risposta allimpulso
o unaltra quantit`a caratterizzante che possa poi essere usata per
ltrare sequenze di dati;
analizzare le prestazioni del ltro cos` progettato (e correggere il
tiro se necessario).
136
5.2. SPECIFICHE DEI FILTRI NUMERICI 137
3. Attuazione del sistema, cio`e messa in opera del ltraggio numerico, in
software e quindi usando una aritmetica a precisione nita.
Linvestigazione delle implicazioni delluso di aritmetica a precisione nita
nei vari algoritmi di elaborazione numerica dei segnali esula dagli scopi di
questo corso.
5.2 Speciche dei ltri numerici
5.2.1 Vincoli sulla risposta di ampiezza
I vincoli sulla risposta di ampiezza prendono la forma di un insieme di limiti di
tolleranza.
La Fig. 5.1 illustra lesempio delle speciche per un passa-basso FIR, che ven-
gono espresse dando i limiti di banda
p
e
s
, i valori desiderati di |H(e
j
)| in
banda passante ed in banda oscura (qui uno e zero rispettivamente), le tolleran-
ze
p
e
s
. La curva blu rappresenta un esempio di |H(e
j
)| che soddisfa tali
speciche, dette assolute. Si noti la banda di transizione interposta tra quella
passante e quella oscura, la cui larghezza non pu` o mai annullarsi, dovendo il
ltro essere realizzabile.
Figura 5.1: Limiti di tolleranza per la risposta di ampiezza di un ltro FIR:
esempio di un passa-basso
Notiamo per inciso che per i ltri IIR le speciche possono essere date in modo
un po diverso, come esemplicato in Fig. 5.2.
Le quantit`a
p
e
s
rappresentano la massima deviazione consentita a |H(e
j
)|,
rispettivamente in banda passante ed oscura, rispetto alla risposta di ampiezza
desiderata.
138 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Figura 5.2: Per i ltri IIR i limiti di tolleranza per la risposta dampiezza possono
essere specicati in modo diverso da quello utilizzato per i ltri FIR. In questo
esempio, la risposta dampiezza `e quella di un ltro di Chebishev di Tipo I
Nel caso dellesempio passa-basso, possiamo formalizzare la risposta di ampiezza
desiderata come
|H
d
(e
j
)| =
_
1 (0,
p
)
0 (
s
, )
e le speciche saranno
_
1
p
|H(e
j
)| 1 +
p
(0,
p
)
|H(e
j
)|
s
(
s
, )
con
s

p
> 0 per la realizzabilit`a.
Nel caso di |H(e
j
)| con andamento oscillante in banda passante e/o oscura (un
caso molto frequente),
p
e
s
sono anche detti ripple in banda passante ed
attenuata, rispettivamente.
A volte si preferisce esprimere la risposta di ampiezza del ltro e le relative
tolleranze in scala logaritmica, in dB; in tal caso si usano le quantit`a
_
r
p
= 20 log
10
_
1+
p
1
p
_
r
s
= 20 log
10
(
s
)
detti ripple in banda passante in dB e attenuazione in banda oscura in dB.
Queste sono speciche relative, nel senso che contengono al loro interno i
valori espliciti di |H
d
(e
j
)|, ossia zero e uno.
La Fig. 5.3 illustra il signicato delle speciche relative. Riguardo alla banda
passante, si noti che talvolta si usa la quantit`a 20 log
10
(1 +
p
), ossia la met`a di
quella sopra riportata.
5.2. SPECIFICHE DEI FILTRI NUMERICI 139
Figura 5.3: Speciche relative per la risposta di ampiezza di un ltro FIR in
dB: lesempio del passa-basso
Poiche
log
e
(1 +
p
)
p
log
e
(1
p
)
p
,
si pu` o scrivere
20 log
10
_
1 +
p
1
p
_
= 20 [log
10
(1 +
p
) log
10
(1
p
)] =
= 20 log
10
e [log
e
(1 +
p
) log
e
(1
p
)]
20 log
10
e 2
p
e quindi
r
p
(40 0.434)
p
17.37
p
.
La relazione inversa `e evidentemente
10
r
p
/20
=
1 +
p
1
p
da cui

p
_
1 + 10
r
p
/20
_
= 10
r
p
/20
1
e quindi in denitiva
_

p
=
10
r
p
/20
1
10
r
p
/20
+1
,

s
= 10
r
s
/20
.
140 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Esempio:

p
= 0.095 r
p
= 17.37 0.095 = 1.65
r
s
= 30 dB
s
= 10
30/20
= 0.0316.
Finora ci si `e limitati al caso in cui sono presenti soltanto una banda passante
ed una oscura (passa-basso).
Nel caso pi` u generale vi saranno una o pi` u bande passanti ed una o pi` u bande
oscure (come, ad esempio, nel pi` u semplice passa-banda) e ciascuna banda avr`a
le proprie tolleranze; la deviazione dal valore desiderato di |H(e
j
)| concessa in
ogni banda (detta anche errore e quindi indicata con e
p
o e
s
) potr`a dipendere
da ; quindi nellinsieme delle bande passanti (sia B
p
) scriveremo
|H
dp
(e
j
)| e
p
() |H(e
j
)| |H
dp
(e
j
)| +e
p
() per B
p
,
dove H
dp
(e
j
) `e la risposta di ampiezza desiderata in B
p
, mentre nellinsieme
delle bande attenuate (sia B
s
) scriveremo, assumendo che il valore desiderato
sia H
ds
(e
j
) = 0,
|H(e
j
)| e
s
() per B
s
.
Ai ni del progetto di ltri, risulta per` o comodo esprimere i vincoli non separa-
tamente per B
p
e B
s
ma i maniera globale, con ununica disequazione.
Per arrivare a questo, innanzi tutto si usano delle funzioni peso per gli errori in
banda passante ed oscura: ssate delle tolleranze massime
p
e
s
si scrivono le
denizioni
_
W
p
() =
p
/e
p
()
W
s
() =
s
/e
s
()
usando le quali le precedenti condizioni diventano
_

p
W
p
()
_
|H(e
j
)| |H
dp
(e
j
)|


p
per B
p
,
W
s
()|H(e
j
)|
s
per B
s
.
A questo punto si scrive, insieme a
H
d
(e
j
) =
_
H
dp
(e
j
) per B
p
,
0 per B
s
,
la funzione peso globale
W() =
_
W
p
() per B
p
,
(
p
/
s
) W
s
() per B
s
e introducendo la funzione di errore pesata
|E()| = W()
_
|H(e
j
)| |H
d
(e
j
)|

5.2. SPECIFICHE DEI FILTRI NUMERICI 141


si arriva a riscrivere globalmente
|E()| per B = B
p
B
s
con
=
p
.
Il vincolo sulla funzione di errore pesata pu` o leggersi cos`: Se il massimo valore
della funzione di errore pesata `e minore o uguale a nellunione delle bande
passanti ed oscure, allora |H(e
j
)| soddisfa i criteri ssati.
C`e poi da dire che nella maggioranza delle applicazioni gli errori non sono
variabili con nelle singole bande, per cui si pu` o porre e
p
=
p
= costante,
e
s
=
s
= costante, e la risposta desiderata in banda passante `e semplicemente
H
dp
(e
j
) = 1 = costante; allora potremo scrivere pi` u brevemente
H
d
(e
j
) =
_
1 per B
p
0 per B
s
(la risposta desiderata `e quella dei ltri ideali selettivi in frequenza) e
_
W
p
() =
p
/
p
= 1
W
s
() =
s
/
s
= 1
(i pesi nelle bande passanti e oscure sono unitari).
Le speciche si riducono cos` a
_

p

_
|H(e
j
)| 1


p
per B
p
,
|H(e
j
)|
s
per B
s
,
ossia
_
1
p
|H(e
j
)| 1 +
p
per B
p
,
|H(e
j
)|
s
per B
s
.
La funzione peso globale sar`a
W() =
_
1 per B
p

p
/
s
per B
s
e con la funzione di errore pesata
|E()| = W()
_
|H(e
j
)| 1

scriveremo globalmente di nuovo


|E()| per B = B
p
B
s
con
=
p
.
142 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Oltre allesempio del passa-basso gi` a esaminato, possiamo ora vedere, in Fig. 5.4,
il caso di un semplice passa-banda con una sola banda passante (e due bande
oscure). B
p
corrisponde a

p1

p2
mentre B
s
corrisponde a
_
0
s1
,

s2
.
Figura 5.4: Limiti di tolleranza per la risposta di ampiezza di un ltro FIR:
esempio di un passa-banda
5.2.2 Vincoli sulla risposta di fase
I vincoli sulla risposta di fase sono quelli imposti dai requisiti di causalit`a e
stabilit` a (poli di H(z) entro il cerchio unitario) pi` u, in molte applicazioni (non
potendosi avere fase nulla), la linearit`a di fase (per avere output senza distorsione
di fase).
Come gi` a detto, in caso di fase lineare la forma del segnale di input, determi-
nata da certe componenti frequenziali contenute in B
p
, `e preservata in output.
Ricordiamo infatti che se
() =
con ritardo di fase = costante, se linput `e una singola componente frequenziale
in banda passante, x[n] = e
jn
, loutput `e y[n] = e
j(n)
= e
j(n)
e quindi
`e come linput, solo ritardato di passi temporali.
5.2. SPECIFICHE DEI FILTRI NUMERICI 143
Se un arbitrario input contiene molte componenti frequenziali in banda passante,
ognuna verr` a ritardata dello stesso n = e quindi la forma del segnale verr` a
preservata. Si noti che ovviamente `e importante la fase in banda passante; in
banda oscura le componenti frequenziali dellinput devono venire eliminate e
quindi la fase in banda oscura non conta.
Per certe applicazioni particolari, si richiede la fase lineare generalizzata. Ad
esempio, questo `e il caso dei ltri di Hilbert, progettati per ruotare di /2
(un quarto di ciclo) la fase di ogni componente sinusoidale del segnale di input
inclusa nella banda passante.
I ltri di Hilbert trovano applicazione (per citare solo alcuni esempi) nei mo-
dulatori e demodulatori, nellelaborazione dei segnali vocali, nellelaborazioni di
immagini in campo medico, ecc... nonche in metodi di analisi di campi scala-
ri spazio-temporali quali lAnalisi in Componenti Principali Complesse, usata
anche in campo geosico per rivelare disturbi in propagazione nel campo sca-
lare studiato (ad esempio, potrebbe trattarsi di un campo di temperature, o di
precipitazioni).
Essenzialmente, i ltri di Hilbert sono utili ogni volta che risulta pi` u convenien-
te elaborare, anzich`e il segnale reale originario, un segnale complesso da esso
derivato in modo univoco, senza alterare le caratteristiche spettrali di partenza.
Tale segnale complesso prende il nome di segnale analitico associato al segnale
reale dorigine. Il ltro di Hilbert fornisce in questi casi il segnale in quadratura
rispetto al segnale originario, necessario per costruire il segnale analitico: la
parte reale del segnale analitico `e il segnale reale di partenza mentre la parte
immaginaria si ottiene appunto facendo passare il segnale nel ltro di Hilbert.
Queste applicazioni esulano dagli scopi del corso. Nel seguito ci focalizzeremo
sui casi con fase strettamente lineare piuttosto che non lineare generalizzata:
quindi la nostra attenzione andr`a ai Tipi I e II di ltri FIR a fase lineare. I ltri
di Tipo III e IV, che tratteremo solo marginalmente, come gi` a detto servono per
approssimare ltri di Hilbert, oppure anche ltri dierenziatori.
Qualora lesatta linearit`a di fase non sia necessaria (o sia irraggiungibile, come
nel caso della scelta di un ltro IIR, che pu` o anche avere fase quasi lineare, ma
non esattamente lineare) si potranno porre limiti di tolleranza sulla linearit`a di
fase stessa.
Si noti che laccettazione di una fase lineare (al posto della desiderata fase nulla)
di per se non rende necessariamente realizzabile un ltro squadrato come ad
esempio un passa-basso ideale: sostituire
H
d
(e
j
) =
_
1 per || <
c
0 per
c
< ||
che ha una risposta allimpulso di lunghezza innita non causale
h
d
[n] =
sin(
c
n)
n
144 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
con
H
d
(e
j
) =
_
e
j
per || <
c
0 per
c
< ||
che ha risposta allimpulso
h
d
[n] =
sin[
c
(n )]
(n )
non risolve la situazione perche questultimo ltro resta pur sempre dotato di
risposta allimpulso di lunghezza innita non causale.
Apriamo a questo punto una piccola parentesi. Abbiamo ripetuto pi` u volte che
un ltro squadrato a fase nulla come ad esempio un passa-basso ideale non `e
computazionalmente realizzabile. Ad uno sguardo superciale, per`o, pu` o appa-
rire possibilissimo applicare tale ltro ad una sequenza di dati: basta semplice-
mente azzerare i coecienti della DFT dei dati che corrispondono a frequenze
indesiderate e poi invertire la trasformata. Vero? O no?
No, falso. Questo procedimento di ltraggio, per quanto attraente a prima vista,
non `e concettualmente corretto per le seguenti ragioni.
Il ltro ideale a fase nulla corrisponde, nel dominio del tempo, ad una risposta
allimpulso che `e una sequenza non causale di lunghezza innita, di andamento
espresso dal seno cardinale (Sinc). Operando su un numero nito di campioni,
noi di fatto tronchiamo questa sequenza di lunghezza innita e cos` facendo, la
eettiva risposta in frequenza applicata ai dati (trasformata inversa della rispo-
sta allimpulso troncata) `e alterata dal fenomeno di Gibbs: forti oscillazioni,
particolarmente forti in prossimit`a della discontinuit` a. Si tratta di un ltro
eettivo che non soddisfa alcuna specica ragionevole. Infatti il troncamento
della risposta allimpulso corrisponde nel dominio della frequenza ad una convo-
luzione continua periodica della risposta in frequenza ideale con la trasformata
di Fourier di una sequenza rettangolare. Il risultato `e una versione deformata
della risposta in frequenza, a causa del fenomeno di Gibbs (il problema coincide
con quello della convergenza - che `e una convergenza solo in media - della serie
di Fourier che rappresenta la risposta ideale).
I dati ltrati ottenuti con questo procedimento saranno viziati dalluso di un
ltro che non soddisfa speciche accettabili. Possiamo anche vedere il fenomeno
da unaltra angolazione: moltiplicando la DFT dei dati per una porta rettango-
lare operiamo quella che `e la rappresentazione in frequenza della convoluzione
dei dati col Sinc. Sinc ha durata innita, ergo anche la convoluzione ha durata
innita e perci`o non `e rappresentabile con una DFT su un numero nito di
punti. Si ha quindi aliasing nel dominio del tempo.
Chiusa la parentesi, procediamo con le considerazioni sul progetto di ltri RCSR
che debbono soddisfare date speciche.
5.3. SELEZIONE DEL TIPO DI FILTRO 145
5.3 Selezione del tipo di ltro
Date le speciche, bisogna decidere se approssimare H
d
(e
j
) con una funzio-
ne razionale (tipica di un sistema IIR) o mediante un polinomio (tipico di un
sistema FIR).
Noi dedicheremo la nostra attenzione ai ltri FIR, che
possono avere fase esattamente lineare;
sono sempre stabili;
sono versatili perche per essi esistono eccellenti metodi di progetto, che
orono grande versatilit`a nel riprodurre H
d
(e
j
) del tutto arbitrarie;
presentano minore sensibilit` a nei confronti di realizzazioni con aritmetica a
precisione nita, rispetto ai ltri IIR; ad esempio hanno minore sensibilit` a
ad errori di arrotondamento nei coecienti;
consentono di ltrare non ricorsivamente nel dominio del tempo, via con-
voluzione oppure via equazione alle dierenze, oppure ancora di ltrare nel
dominio della frequenza. Questa caratteristica non costituisce un elemen-
to di preferenza rispetto ai ltri IIR, in quanto ai ni delle applicazioni di
nostro interesse, ltrare ricorsivamente nel dominio del tempo via equa-
zione alle dierenze, come richiesto da un ltro IIR (si veda la sezione
5.13) non `e pi` u scomodo delle altre possibilit`a citate, oerte da un ltro
FIR ; tuttavia si tratta di una caratteristica peculiare dei ltri FIR e per
questa ragione `e stata inserita nel presente elenco.
Per contro, i ltri FIR presentano anche svantaggi, tra cui:
non esistono per essi equazioni di progetto in forma chiusa, cosa che invece
spesso accade per i ltri IIR. Date le speciche, non esiste cio`e una for-
mula in cui inserirle che fornisca immediatamente la risposta in frequenza
del ltro numerico progettato. Il progetto dei ltri FIR implica, come
vedremo, procedimenti iterativi che richiedono potenti mezzi di calcolo;
in genere approssimano date speciche ad un ordine superiore rispetto a
quello di un analogo ltro IIR;
normalmente non sono piatti in banda passante ma presentano oscillazio-
ni, mentre un ltro IIR pu` o essere piatto, come il ltro passa-basso di
Butterworth riportato in Fig. 5.5.
Per riassumere, lo svantaggio pi` u notevole dei ltri IIR rispetto a quelli FIR sta
nel fatto che questi ultimi tipicamente a parit`a di speciche hanno ordini pi` u
elevati. Per contro, i ltri IIR hanno fase non lineare. Questo tuttavia non `e
drammatico, perch`e le applicazioni che ci interessano normalmente prevedono
che lelaborazione dei dati sia eettuata oine: lintera sequenza di dati `e gi` a
146 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Figura 5.5: Risposta di ampiezza di un ltro IIR passa-basso di Butterworth di
ordine 9
disponibile prima del ltraggio. Questo consente un approccio non causale a
fase nulla (come vedremo pi` u avanti) che elimina le distorsioni dovute alla fase
non lineare di un ltro IIR.
In conclusione, la scelta di occuparsi soltanto di ltri FIR, fatta in questo corso,
si basa sostanzialmente sulla versatilit`a del metodo di progetto minimax, dispo-
nibile per i ltri FIR (non potendo trattare entrambi i ltri FIR e IIR per ovvie
limitazioni di tempo).
Presa la decisione di approssimare H
d
(e
j
) con un polinomio, ossia con un
sistema FIR, non sempre si ha la libert` a scegliere liberamente tra i quattro Tipi
di ltri FIR a fase lineare, ed in particolare tra i tipi I e II nel caso di ltri a
fase esattamente lineare adatti alla selezione in frequenza.
Per capire questo, riprendiamo quanto detto nella sezione 4.3, a proposito
delle restrizioni che la causalit`a impone sui ltri a GLP. Abbiamo visto in
quelloccasione che
1.
0
= 0 (Tipi I e II): H() `e funzione pari di ;
2.
0
= /2 (Tipi III e IV): H() `e funzione dispari di ;
inoltre
1.
g
intero (Tipi I e III): H() `e periodica con periodo 2;
2.
g
semi-intero (Tipi II e IV): H() `e periodica con periodo 4.
5.3. SELEZIONE DEL TIPO DI FILTRO 147
Emerge cos` il quadro seguente, illustrato in Fig. 5.6:
1. Tipo I: H() `e periodica con periodo 2 ed `e funzione pari di ;
2. Tipo II: H() `e periodica con periodo 4 ed `e funzione pari di ;
3. Tipo III: H() `e periodica con periodo 2 ed `e funzione dispari di ;
4. Tipo IV: H() `e periodica con periodo 4 ed `e funzione dispari di .
Tipo I
1
0
1
H
(

)
Tipo II
1
0
1
H
(

)
Tipo III
1
0
1
H
(

)
Tipo IV
0

2 3 4
1
0
1

H
(

)
Figura 5.6: Esempi di H() per ltri dei Tipi I - II - III - IV.
`
E mostrata
la diversa simmetria e periodicit` a di H() nei quattro casi, caratteristiche che
implicano che solo il Tipo I sia adatto a tutti i generi di selettivit`a in frequenza,
mentre negli altri casi vi siano delle esclusioni
Osservando la Fig. 5.6, notiamo che
1. Tipo I: H() presenta simmetria pari sia attorno a = 0, sia attorno a
= , quindi `e libera di assumere qualunque forma, quella di un passa-
basso come quella di un passa-alto oppure di un passa-banda o di un
ferma-banda;
2. Tipo II: H() presenta simmetria pari attorno a = 0 e attorno a = 2,
ma presenta simmetria dispari attorno a = e attorno a = 3. A
= dunque deve necessariamente essere nulla e quindi non pu` o assumere
la forma di un passa-alto oppure di un ferma-banda;
148 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
3. Tipo III: H() presenta simmetria dispari attorno a = 0 e attorno a
= , punti in cui deve annullarsi. Pertanto non pu` o assumere la forma
di un passa-basso, di un passa-alto oppure di un ferma-banda;
4. Tipo IV: H() presenta simmetria dispari attorno a = 0 e attorno a
= 2, mentre presenta simmetria pari attorno a = e attorno a
= 3. A = 0 deve necessariamente essere nulla e quindi non pu` o
assumere la forma di un passa-basso oppure di un ferma-banda.
Ne concludiamo che mentre i ltri di Tipo I sono adatti per tutti i di selettivit` a
in frequenza, i ltri di Tipo II possono essere usati solo per ltri passa-basso o
passa-banda. Considerando poi che il tipo I ha ritardo intero, mentre il Tipo II
ha ritardo semi-intero, se non vi sono indicazioni particolari di solito per i ltri
selettivi in frequenza ci si attiene al Tipo I (ordine pari).
5.4 Selezione del metodo di progetto
I metodi per progettare ltri FIR possono dividersi in due categorie:
1. metodi che richiedono solo calcoli relativamente semplici. Il pi` u noto `e il
progetto con luso di nestre, cui faremo tra breve un rapido cenno. Un
altro metodo `e il progetto least squares (minimi quadrati). Questi me-
todi danno buoni risultati ma non sono ottimali in termini di complessit`a
del ltro progettato.
2. metodi che si basano su ottimizzazioni numeriche e richiedono complicati
software di progetto. Il pi` u noto `e il progetto equiripple o minimax che
esamineremo pi` u in dettaglio e che garantisce laccordo con le speciche
alla minima complessit`a possibile.
Un punto cruciale che determina la comodit` a duso di un metodo di progetto
`e la disponibilit`a di una qualche formula che consenta di stimare a priori con
buona approssimazione lordine del ltro necessario per adeguarsi a determinate
speciche.
In generale, `e intuitivo che quanto pi` u stringenti sono le speciche che un ltro
deve soddisfare, pi` u elevato dovr`a essere il suo ordine: ad esempio, nel caso di
un passa-banda FIR, pi` u questo dovr`a essere buono (cio`e con piccolo ripple,
grande attenuazione in banda oscura e banda di transizione stretta), pi` u lordine
dovr`a essere elevato (il che comporta, tra laltro, una h[n] pi` u lunga, pi` u calcoli
nel ltraggio e tratti pi` u estesi della sequenza di input sprecati nei transitori
della convoluzione con h[n]).
Fissando ad arbitrio speciche ed ordine, potr`a facimente accadere che il ltro
progettato non abbia le caratteristiche desiderate. Si dovr`a allora modicare
qualche parametro (normalmente, aumentare lordine del ltro) e ripetere no
5.5. CRITERI DI APPROSSIMAZIONE 149
a soddisfazione. Una valutazione anche approssimativa dellordine richiesto per
adeguarsi a certe speciche ssate nellambito di un dato metodo di progetto
potr`a allora far risparmiare molto lavoro.
Tale stima a priori dellordine, che si basa su formule empiriche, `e possibi-
le nel metodo equiripple mentre `e limitata ad un caso particolare nel meto-
do con nestre: un ulteriore argomento a favore del metodo equiripple (oltre
allottimalit`a).
5.5 Criteri di approssimazione
Alla base di un metodo di progetto sta la denizione di una misura di errore,
tramite la quale giudicare la vicinanza di una certa risposta in frequenza a
quella desiderata. Tale misura di errore caratterizza il metodo stesso.
Tre diverse misure di errore vengono usate normalmente nel progetto di ltri
numerici.
1. Progetti minimax error
I campioni di h[n], che sono anche i coecienti della funzione di trasferi-
mento del ltro, vengono ottimizzati in modo tale da minimizzare lerrore
massimo della risposta in frequenza del ltro progettato rispetto a quella
desiderata. La soluzione ottenuta `e detta minimax o approssimazione di
Chebyshev.
La quantit`a da minimizzare `e lerrore assoluto massimo in banda passan-
te e/o in banda attenuata. Per capire il signicato di questa quantit`a,
ssiamo lattenzione ad esempio sulla banda passante e supponiamo che
il ltro numerico che progettiamo abbia andamento oscillante, come in
Fig. 5.1. Allora dov`e che lerrore assoluto `e massimo? Nei punti in cui la
risposta dampiezza progettata tocca i limiti di tolleranza, ossia nei punti
di massimo e minimo relativo della risposta dampiezza: in altre parole,
nei picchi della risposta di ampiezza. Quindi lerrore assoluto massimo
in banda passante `e un errore di picco, ed in eetti `e proprio questa
lespressione che si usa. Analoghe considerazioni valgono in banda oscura.
Dare i limiti di tollerenza signica specicare il valore massimo consentito
per per lerrore assoluto di picco; in base a ci`o si determina il minimo
ordine necessario per stare entro i limiti ssati. Si procede poi ad ottimiz-
zare i coecienti del ltro avente lordine minimo determinato, in modo
da minimizzare eettivamente lerrore assoluto di picco in banda passante
e/o in banda attenuata. Il risultato nale potr`a avere un errore assoluto
di picco pari al valore massimo pressato (limite di tolleranza) o un po
inferiore, a seconda che lordine minimo determinato fosse esattamente
quello giusto o un po sovrabbondante.
In realt`a le formule empiriche per la determinazione dellordine minimo
semmai lo sottostimano, quindi `e probabile che al primo tentativo, pur
150 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
minimizzando, non si stia entro le speciche. Allora si aumenta lordine e
si ripete nch`e lerrore minimizzato non scende sotto il limite di tolleran-
za. Unaltra cosa da tener presente `e che se lordine minimo determinato
empiricamente `e dispari, ed invece si vuole un ltro di Tipo I, bisogner` a
almeno aumentarlo di una unit`a per riportarsi ad ordine pari; e se le
speciche vengono oltrepassate al primo tentativo ed occorre aumentare
ancora lordine, si dovr`a aumentarlo di due unit`a per volta, per restare
nellambito di ltri di Tipo I.
I ltri ottenuti con questo procedimento risultano equiripple, ossia ad
oscillazione uniforme (dotati di oscillazioni in banda passante ed oscura
che allinterno della singola banda sono tutte uguali fra loro). Da questo
fatto deriva, appunto, il termine equiripple: ripples tutti uguali.
2. Progetti least squares
In questo caso viene minimizzato lerrore quadratico medio fra la risposta
desiderata e quella eettiva. Lerrore che si considera `e quello integrato
sul set di bande di frequenza di interesse (passanti e/o oscure); il t pu` o
eventualmente essere pesato diversamente sulle varie bande.
Una variante detta constrained least squares FIR lter design, cio`e con
minimizzazione vincolata dellerrore quadratico medio, permette di eet-
tuare la minimizzazione dellerrore integrato imponendo nel contempo li-
miti superiore ed inferiore di errore per la risposta di ampiezza nelle varie
bande.
3. Altri progetti
Esistono anche tecniche di progetto pi` u semplici, che direttamente non
usano alcuno dei criteri citati: ad esempio la tecnica con uso di nestre.
Questo metodo parte da una generica risposta in frequenza desiderata
H
d
(e
j
), ideale, che essendo una funzione periodica di con periodo 2,
pu` o essere sviluppata in serie di Fourier. I coecienti dello sviluppo sono
i campioni della risposta allimpulso h
d
[n], non causale e di lunghezza
innita.
Tale sequenza viene poi troncata per avere una approssimazione FIR e
questo viene fatto inquadrandone una porzione di lunghezza nita in una
nestra di forma opportuna, avente solo un numero nito di campioni
non nulli. La nestra pi` u semplice `e una sequenza rettangolare ma possono
essere impiegate anche nestre con discesa pi` u graduale ai bordi. Discu-
teremo in seguito di nestre, quando sar`a necessario per la discussione di
metodi di stima spettrale nellambito dellapproccio statistico allanalisi
dei segnali (Parte III). Nel caso di uso di sequenza rettangolare, e solo in
quello, la tecnica con nestre si inquadra nel secondo criterio di misura
derrore (quello least squares).
La h
d
[n] del progetto con nestre `e una sequenza bilatera e come tale verr` a
inquadrata in una nestra centrata su n = 0, ossia non causale; in seguito
la risposta allimpulso verr` a ritardata per ottenere la causalit`a. In alter-
nativa si pu` o incorporare un fattore di fase nella risposta ideale ed allora
si pu` o utilizzare direttamente una nestra causale per il troncamento.
5.5. CRITERI DI APPROSSIMAZIONE 151
Normalmente H
d
(e
j
) sar`a costante a tratti con discontinuit` a tra una
banda e laltra (si pensi ai quattro generi di ltri ideali). La convergenza
della serie che rappresenta H
d
(e
j
) sar`a dunque da intendere in senso
quadratico medio ed ogni troncamento della serie stessa ad un numero
nito di termini coinvolger`a il fenomeno di Gibbs. Pertanto la soluzione
(la risposta in frequenza del ltro progettato) sar`a oscillante.
Lo svantaggio di tale metodo `e che, come mostrato in Fig. 5.7, le oscilla-
zioni in banda passante ed attenuata
in ogni banda non sono equiripple, ma massime ai lati della disconti-
nuit` a: in questo modo le speciche vengono soddisfatte a due singole
frequenze ma sono decisamente eccessive alle altre frequenze;
sono vincolate ad essere uguali in banda passante ed in banda at-
tenuata: se, come di solito avviene, le speciche sono pi` u stringenti
in banda oscura (
s
<
p
), si nisce per avere una accuratezza non
necessaria in banda passante, il che fa crescere lordine del ltro.
0 0.5 1 1.5 2 2.5 3
0
0.2
0.4
0.6
0.8
1
1.2

|
H
[
e
x
p
(
j

)
]
|
Figura 5.7: Esempio di un Filtro FIR passa-basso di Tipo I progettato col
metodo delle nestre. La nestra utilizzata `e quella rettangolare e lordine `e
N 1 = 28. Si nota il fatto che il ltro non `e equiripple e che le oscillazioni
massime, collocate ai lati della discontinuit` a della risposta in frequenza ideale,
hanno la stessa ampiezza in banda passante ed attenuata
E intuitivo che se lerrore di approssimazione viene distribuito unifor-
memente in frequenza, e se i ripple nelle due bande vengono aggiustati
separatamente, certe speciche possono essere soddisfatte con un ltro di
ordine inferiore.
Questa considerazione qualitativa trova conferma rigorosa in un teore-
ma detto dellalternanza che sta alla base del progetto equiripple. Pri-
ma di illustrare questultimo metodo, dobbiamo tuttavia riconsiderare le
caratteristiche dei ltri FIR a fase lineare, per denire le quantit`a che
useremo.
152 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
5.6 Caratteristiche dei ltri FIR a fase lineare
La funzione di trasferimento di un ltro FIR di ordine N1 (lunghezza N della
risposta allimpulso h[n]) `e un polinomio in z
1
di grado pari allordine del ltro
H(z) =
N1

n=0
h[n]z
n
e presenta
N 1 poli in z = 0,
N 1 zeri ovunque nel piano z al nito.
La risposta in frequenza
H(e
j
) =
+

n=
h[n]e
jn
esiste certamente perche H(z) converge sul cerchio unitario, essendo la trasfor-
mata z di una sequenza di lunghezza nita.
Poiche una sequenza di durata nita N `e completamente specicata da N cam-
pioni della sua trasformata di Fourier a tempo discreto, il progetto di un ltro
FIR pu` o essere volto a trovare
gli N campioni della sua h[n], necessari a eettuare ltraggi di sequenze
nel dominio del tempo, oppure
N campioni della sua H(e
j
), necessari a eettuare ltraggi di sequenze
nel dominio della frequenza.
Abbiamo visto precedentemente che:
per avere fase lineare (o lineare generalizzata), il ltro deve essere FIR e
gli h[n] devono soddisfare certe condizioni di simmetria;
le caratteristiche in frequenza di un ltro a fase lineare sono preferenzial-
mente espresse nella rappresentazione in fase continua, e quindi mediante
la risposta a fase nulla H(), una quantit`a reale tale che
H(e
j
) = H()e
j()
= H()e
j(
0

g
)
con
g
= ritardo di gruppo = costante nei ltri a GLP.
A dierenza di |H(e
j
)|, H() pu` o assumere valori sia positivi o nulli, sia
negativi. In corrispondenza di ci`o, la fase () non contiene pi` u i salti
di che in () si trovavano in corrispondenza degli zeri di |H(e
j
)| e
risulta linearizzata (Fig. 5.8)
5.6. CARATTERISTICHE DEI FILTRI FIR A FASE LINEARE 153
Figura 5.8: Passaggio dalla risposta di ampiezza alla risposta a fase nulla: a
questultima `e consentito di assumere valori negativi, ed in corrispondenza la
fase viene linearizzata
i ltri numerici RCSR a GLP esistono in quattro tipi.
1. Tipo I:
=
g
=
N1
2
= intero, quindi N 1 pari, N dispari;

0
= 0, quindi h[n] = h[N 1 n].
2. Tipo II:
=
g
=
N1
2
= semi-intero, quindi N 1 dispari, N pari;

0
= 0, quindi h[n] = h[N 1 n].
3. Tipo III:

g
=
N1
2
= intero, quindi N 1 pari, N dispari;

0
=

2
, quindi h[n] = h[N 1 n].
4. Tipo IV:

g
=
N1
2
= semi-intero, quindi N 1 dispari, N pari;

0
=

2
, quindi h[n] = h[N 1 n].
Il centro di simmetria k =
N1
2
dei coecienti h[n] `e
intero per i Tipi I e III,
semi-intero per i Tipi II e IV, come si pu` o vedere in Fig. 5.9.
154 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
0 1 2 3 4
n
h
[
n
]
N = 5
Tipo I
0 1 2 3
n
h
[
n
]
N = 4
Tipo II
0 1 2 3 4
n
h
[
n
]
N = 5
Tipo III
0 1 2 3
n
h
[
n
]
N = 4
Tipo IV
Figura 5.9: Simmetria dei campioni della risposta allimpulso per i quattro tipi
di ltri FIR a fase lineare e lineare generalizzata: esempi. Il centro di simmetria,
indicato dalla linea nera tratteggiata in ciascun pannello, `e k =
N1
2
e pu` o essere
intero o semi-intero
5.6.1 Fattorizzazione della risposta a fase nulla
Ai ni del progetto, `e utile unicare la relazione di simmetria dei coecienti
per i quattro tipi di ltri, cosa che si ottiene come segue.
Per ciascuni dei quattro tipi, si pu` o fattorizzare H(z) come
H(z) = F(z) G(z)
dove il termine F(z) ha forma funzionale ssa per ciascun tipo:
F(z) =
_

_
1 per il Tipo I
1+z
1
2
per il Tipo II
1z
2
2
per il Tipo III
1z
1
2
per il Tipo IV
e quindi viene detto termine sso, mentre il termine G(z), detto termine
aggiustabile,
G(z) =
2M

n=0
g[n]z
n
5.6. CARATTERISTICHE DEI FILTRI FIR A FASE LINEARE 155
con
M =
_

_
N1
2
per il Tipo I
N
2
1 per il Tipo II
N3
2
per il Tipo III
N
2
1 per il Tipo IV,
contiene 2M +1 coecienti g[n] che sono diversi a seconda del particolare ltro
considerato (cio`e diversi a seconda delle speciche) e sono quindi da determinarsi
in base alle speciche stesse (sono, appunto, aggiustabili).
Si noti che
G(z) `e esso stesso una funzione di trasferimento di Tipo I (nel senso che
per il Tipo I, F(z) = 1 e quindi H(z) G(z));
`e un polinomio in z
1
di grado 2M, quindi di grado pari (come pari `e
lordine N 1 per il Tipo I).
Ovviamente i coecienti g[n] sono legati agli h[n] e quindi sono simmetrici,
ma la fattorizzazione operata fa s` che la relazione di simmetria per i nuovi
coecienti g[n] sia unica per i quattro tipi:
g[2M n] = g[n].
Con questo articio, lo studio di un metodo di progetto pu` o concentrarsi su
G(z), cio`e sul Tipo I; il metodo di progetto analogo per i ltri degli altri tre tipi
viene ricondotto a quello per il Tipo I.
La Tabella 5.1 riporta la relazione tra i coecienti h[n] ed i coecienti g[n],
diversa per ciascun tipo. In particolare, per il Tipo I si ha h[n] g[n].
La Fig. 5.10 illustra la relazione tra N, M e numero di coecienti g[n] tra loro
indipendenti, per i quattro tipi di ltri. Si noti che la convoluzione lineare per
il ltraggio di un segnale di durata nita richiede solo M + 1 moltiplicazioni
perche solo M + 1 coecienti di h[n] sono indipendenti.
Per le propriet` a di simmetria dei g[n] si pu` o scrivere, partendo dalla formula
G(z) =

2M
n=0
g[n]z
n
,
G(z) = z
M
_
g[M] +g[M 1](z +z
1
) +. . . +g[0](z
M
+z
M
)
_
che sul cerchio unitario (z = e
j
) d`a
G(z) = e
jM
{g[M] +g[M 1]2 cos +g[M 2]2 cos(2) +. . . +g[0]2 cos(M)}.
Per ottenere questultima espressione abbiamo sfruttato il fatto che, ad esempio,
z +z
1
= e
j
+e
j
= cos +j sin + cos j sin = 2 cos
156 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
coeciente Tipo I Tipo II Tipo III Tipo IV
h[0] g[0] g[0]/2 g[0]/2 g[0]/2
h[1] g[1]
g[1]+g[0]
2
g[1]/2
g[1]g[0]
2
h[n] g[n]
g[n]+g[n1]
2
g[n]g[n2]
2
g[n]g[n1]
2
h[N 2] g[N 2]
g[N2]+g[N3]
2

g[N4]
2
g[N2]g[N3]
2
h[N 1] g[N 1]
g[N2]
2

g[N3]
2

g[N2]
2
2M = N 1 2M = N 2 2M = N 3 2M = N 2
Tabella 5.1: Relazione tra i coecienti h[n] ed i coecienti g[n]
0 1 2 3 4
n
h
[
n
]
N = 5
M = 2
Tipo I
0 1 2 3
n
h
[
n
]
N = 4
M = 1
Tipo II
0 1 2 3 4
n
h
[
n
]
N = 5
M = 1
Tipo III
0 1 2 3
n
h
[
n
]
N = 4
M = 1
Tipo IV
Figura 5.10: Valore di M per ciascuno dei quattro tipi di ltri FIR a fase
lineare e lineare generalizzata: esempi. In rosso sono evidenziati i coecienti
indipendenti
5.6. CARATTERISTICHE DEI FILTRI FIR A FASE LINEARE 157
e relazioni analoghe.
Lasciando da parte il fattore di fase, abbiamo dunque
G() = g[M] +g[M 1]2 cos +g[M 2]2 cos(2) +. . . +g[0]2 cos(M)
che pu` o essere riscritta come
G() =
M

n=0
a[n] cos(n)
avendo posto
a[n] =
_
2g[M n] per n = 0
g[M] per n = 0.
Analogamente, dopo alcuni passaggi si arriva a scrivere
F(z) =
_

_
1 per il Tipo I
e
j

2
cos(

2
) per il Tipo II
e
j(

2
)
sin per il Tipo III
e
j(

2
)
sin(

2
) per il Tipo IV
da cui, lasciando da parte i fattori di fase,
F() =
_

_
1 per il Tipo I
cos(

2
) per il Tipo II
sin per il Tipo III
sin(

2
) per il Tipo IV.
Combinando le espressioni ottenute per G() e F() si ottiene la risposta a fase
nulla,
H() = F() G().
Nellespressione del termine aggiustabile G() =

M
n=0
a[n] cos(n) a questo
punto rimangono solo M+1 coecienti a[n] indipendenti tra loro e determinarli
sar`a lo scopo del progetto.
Dalle stesse espressioni, riprendendo e mettendo insieme i fattori di fase prima
scartati, si deriva anche la forma del termine di fase:
() =
_

N1
2
per i Tipi I e II (fase strettamente lineare),

N1
2
+

2
per i Tipi III e IV (fase lineare generalizzata).
Si ha quindi un semplice sfasamento o ritardo di
N1
2
campioni per i Tipi I
(ritardo intero) e II (ritardo semi-intero).
Come gi` a detto, normalmente si usano ltri dei Tipi I e II perche il ritardo
di fase = ()/ =
N1
2
`e indipendente dalla frequenza, come desiderato
158 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
per preservare la forma del segnale; i ltri di Tipo II e IV sono usati per ltri
speciali.
Prima di passare oltre, notiamo che la forma dei termini con cui H() `e stata
fattorizzata `e consistente con quanto detto in precedenza a proposito del fatto
che solo i ltri di Tipo I sono adatti per tutti i tipi di selettivit`a in frequenza. In
particolare, il comportamento di H() a = 0 e = `e vincolato dal termine
F():
1. Tipo I: F() = 1, quindi F() non si annulla mai e lascia H() libera di
assumere qualunque forma;
2. Tipo II: F() = cos(

2
), quindi a = si ha F() = 0 e H() = 0: il ltro
non pu` o assumere la forma di un passa-alto oppure di un ferma-banda;
3. Tipo III: F() = sin , quindi a = 0 e = si ha F() = 0 e
H() = 0: il ltro non pu` o assumere la forma di un passa-basso, di un
passa-alto oppure di un ferma-banda;
4. Tipo IV: F() = sin(

2
), quindi a = 0 si ha F() = 0 e H() =
0: il ltro non pu` o assumere la forma di un passa-basso oppure di un
ferma-banda.
5.6.2 Zeri della funzione di trasferimento dei ltri FIR a
GLP
Gli zeri di H(z) sono determinati sia da F(z), sia da G(z).
Per quanto concerne il termine sso,
F(z) =
_

_
1 per il Tipo I: nessuno zero
1+z
1
2
per il Tipo II: uno zero in z = 1
1z
2
2
per il Tipo III: due zeri in z = 1
1z
1
2
per il Tipo IV: uno zero in z = +1.
Per gli zeri di G(z), si osserva che poiche
G(z) = z
M
_
g[M] +g[M 1](z +z
1
) +. . . +g[0](z
M
+z
M
)
_
,
G(z
1
) = z
M
_
g[M] +g[M 1](z
1
+z) +. . . +g[0](z
M
+z
M
)
_
,
ossia
G(z
1
) = z
2M
G(z).
Se ne deduce che G(z) e G(z
1
) hanno gli stessi zeri (si ricordi che in z = 0 vi
sono i poli).
5.6. CARATTERISTICHE DEI FILTRI FIR A FASE LINEARE 159
Questa propriet` a ha come conseguenza che gli zeri di G(z) appaiono in coppie
speculari: per un G(z) con coecienti reali, gli zeri sono reali o appaiono in
coppie in cui un membro `e il complesso coniugato dellaltro.
Pi` u in dettaglio, come illustrato in Fig. 5.11, si hanno:
quadrupletti non disposti sul cerchio unitario:
z = r
i
e
j
i
;
1
r
i
e
j
i
;
coppie complesso-coniugate sul cerchio unitario:
z = e
j

i
;
coppie reciproche sullasse reale:
z = r

i
;
1
r

i
.
Figura 5.11: Zeri della funzione G(z): esempio
Questi sono anche gli zeri di una H(z) di Tipo I. Gli altri tipi presentano die-
renze rispetto al Tipo I, per quanto concerne gli zeri, solo in z = 1, a seconda
del tipo e quindi della forma di F(z).
5.6.3 Rappresentazione alternativa di G()
La forma di G() discussa nora `e una possibile rappresentazione della risposta
a fase nulla dei ltri di Tipo I, che verr` a usata per il progetto minimax.
Unaltra rappresentazione di G() utile nel medesimo contesto deriva dallden-
tit`a
cos(n) = T
n
(cos )
160 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
dove
T
n
(x) = cos(narccos x)
`e il Polinomio di Chebyshev di grado n in x.
Questi polinomi possono essere generati con la formula ricorsiva
_

_
T
0
(x) = 1
T
1
(x) = x
. . .
T
n
(x) = 2xT
n1
(x) T
n2
(x).
Usando queste relazioni si pu` o scrivere cos(n) come un polinomio di grado n
in cos e quindi scrivere G() come un polinomio di grado M in cos :
G() =
M

n=0
a[n] cos(n) =
M

n=0
[n] cos
n
,
dove i coecienti [n] sono, ovviamente, ricavabili dagli a[n] (a loro volta legati
ai g[n], etc...).
5.7 Approssimazioni equiripple per ltri FIR a
GLP
Il metodo che ora descriveremo, detto progetto di ltri equiripple o ad oscil-
lazione uniforme o progetto minimax, serve per progettare ltri FIR a GLP
di uno qualsiasi dei quattro tipi.
Il progetto si basa sulla fattorizzazione della risposta a fase nulla che abbiamo
studiato, ossia sul fatto che si pu` o scrivere H() = F() G(), dove solo G()
contiene coecienti aggiustabili, da determinarsi a seconda delle speciche del
particolare ltro considerato.
Lavorare sulla risposta a fase nulla, anziche sulla risposta di ampiezza, `e comodo
ma non restrittivo: infatti conosciamo gi` a la risposta di fase e sappiamo a priori
come loutput del ltro sar`a ritardato rispetto allinput.
Il metodo serve proprio a determinare, in base alle speciche espresse, i coef-
cienti a[n] o [n] di G() =

M
n=0
a[n] cos(n) =

M
n=0
[n] cos
n
, per poi
risalire tramite i g[n] ai coecienti h[n] della risposta allimpulso.
Dalla discussione precedente appare chiaro che possiamo limitarci a discutere il
Tipo I, per il quale H() = G(), essendo poi in grado di risalire ad H() per
gli altri tre tipi utilizzando la forma, nota, di F(), che dierenzia il Tipo II,
oppure III, oppure IV dal Tipo I.
5.7. APPROSSIMAZIONI EQUIRIPPLE PER FILTRI FIR A GLP 161
Illustriamo il metodo nel caso di un passa-basso di Tipo I. Il caso di un passa-alto
sarebbe perfettamente analogo; qualche dierenza nasce considerando invece un
passa-banda o un ferma-banda, perche questi due generi di ltri presentano,
rispetto al passa-basso, un numero diverso di bande. In seguito discuteremo
brevemente le implicazioni di questo fatto.
Fissiamo dunque lattenzione su un passa-basso di Tipo I, con ordine N1 pari
e lunghezza N della risposta allimpulso dispari, che dovr`a soddisfare le speci-
che mostrate, questa volta in termini di risposta a fase nulla, nella Fig. 5.12.
Lesempio riportato ha N = 15 e M =
N1
2
= 7.
0

p

s

s
0
+
s
1
p
1
1 +
p

H
(

)
Figura 5.12: Speciche per il progetto di un passa-basso di Tipo I, con N = 15
e M = 7. Le linee rosse rappresentano la risposta desiderata in banda passante
ed in banda oscura, le linee verdi indicano i limiti di tolleranza e la curva blu
mostra la risposta a fase nulla di una approssimazione minimax che soddisfa le
speciche
Si noti che, come gi` a detto, i vincoli vengono posti esclusivamente sulle bande
passante ed oscura; nella banda di transizione non si pongono vincoli su H(),
ma la banda di transizione stessa deve avere larghezza non nulla perche il ltro
sia realizzabile.
Poiche non `e possibile ssare indipendentemente ciascuno dei cinque parametri
M,
p
,
s
,
p
e
s
, sono stati sviluppati algoritmi di progetto in cui alcuni
di questi parametri sono ssati ed i rimanenti vengono ottimizzati con una
procedura iterativa di minimizzazione dellerrore massimo su (0,
p
) e (
s
, ).
162 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Noi considereremo lapproccio in cui si ssano M,
p
,
s
ed il rapporto =

p
/
s
, mentre leettivo valore di
p
(e quindi di
s
) viene minimizzato.
Ripetiamo ancora una volta che:
il metodo porta a costruire ltri ottimizzati secondo il criterio minimax,
che risultano ottimi nel senso che si accordano alle speciche col minimo
ordine possibile ad un ltro FIR a GLP;
il progetto minimax ha caratteristiche di estrema ecienza nellottimizzare
ltri con speciche arbitrarie su H(), tanto che la sua esistenza costituisce
un argomento a favore delluso dei ltri FIR rispetto a quello dei ltri IIR;
il procedimento consente di ottenere ltri selettivi in frequenza, in generale
multibanda, e ltri speciali; i primi sono di Tipo I o II, i secondi di Tipo
III e IV;
per i Tipi I e II usati per selezionare in frequenza, ssato lordine N 1
resta automaticamente determinato il valore di M ed il tipo (Tipo I se
lordine `e pari, Tipo II se `e dispari).
Tra le molte varianti di cui si ha notizia in letteratura, lalgoritmo pi` u eciente
di progetto minimax `e quello di Remez, detto multiple exchange algorithm per
le ragioni che vedremo. Dellalgoritmo di Remez, il metodo di attuazione in
software pi` u usato `e quello di McClellan, Parks e Rabiner (algoritmo MPR).
Un parametro importante nel progetto `e il numero di massimi e minimi lo-
cali che H(), oscillando (come si addice ad una sovrapposizione di coseni),
raggiunge nellintervallo 0 .
La Fig. 5.13 mostra, per il nostro passa-basso, le frequenze a cui cadono i mas-
simi ed i minimi locali, che nellesempio sono anche frequenze a cui H() `e al
limite della tolleranza derrore. Inoltre H() `e al limite della tolleranza derrore
anche in
p
e
s
: in totale abbiamo cos` 7 + 2 = M + 2 = 9 frequenze.
Per esaminare in generale la dipendenza del numero di massimi e minimi locali
di H() da M, si utilizza lespressione di G() come somma di potenze di cos :
per il Tipo I
H() = G() =
M

n=0
[n] cos
n
,
che essendo un polinomio trigonometrico di ordine M, pu` o avere al massimo
M 1 massimi e minimi locali nellintervallo aperto 0 < < . Inoltre
dH()
d
= sin
M

n=0
n[n] cos
n1
= 0 per =
_
0

e quindi vi `e sempre un massimo o un minimo a = 0 e = .


Conclusione: si hanno al massimo M + 1 estremi locali di H() nellintervallo
chiuso 0 . Non `e detto per` o a priori che i massimi siano tutti uguali
5.7. APPROSSIMAZIONI EQUIRIPPLE PER FILTRI FIR A GLP 163

0

1

2

3

4

5

6

7

8

s
0
+
s
1
p
1
1 +
p

H
(

)
Figura 5.13: Frequenze a cui H() `e al limite della tolleranza derrore. Nelle-
sempio (ltro di Tipo I con M = 7) abbiamo M + 2 = 9 frequenze, numerate
da 0 a M + 1 = 8, con
0
= 0,
3
=
p
,
4
=
s
e
8
=
fra loro, e cos` i minimi; se un massimo o un minimo `e pi` u piccolo degli altri, in
quel punto H() non arriver` a al massimo della tolleranza derrore.
Dobbiamo ora stabilire quali requisiti debba avere un ltro per essere ottimo.
Lalgoritmo MPR consente di trovare i coecienti di G() =

M
n=0
a[n] cos(n) =

M
n=0
[n] cos
n
che minimizzano, in un sottoinsieme chiuso F di (0, ), il
valore assoluto di picco dellerrore:
= max
F
|E()|
dove
E() = W()
_
G() H
d
()

con W() > 0 e H


d
() continua in F, anche a tratti.
Le funzioni W() e H
d
() sono per G() ci`o che W() e H
d
() sono per H():
E() = W() [H() H
d
()] =
= W() [F()G() H
d
()] =
= W()F()
_
G()
H
d
()
F()
_
=
= W()
_
G() H
d
()

,
164 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
con
W() = W()F(),
H
d
() =
H
d
()
F()
,
e servono per esprimere le speciche in termini di G().
Linsieme F include, nel nostro esempio di ltro passa-basso, sia la banda
passante, sia quella attenuata:
F = 0
p

s
.
Riferendoci ancora allesempio del passa-basso, si avr`a
H
d
() =
_
1 per 0
p
0 per
s

e
W() =
_
1 per 0
p
per
s

con =
p
/
s
= rapporto tra le ampiezze di errore massimo in banda passante
ed attenuata; si avr`a inne =
p
.
Per il Tipo I, F() = 1, W() = W(), H
d
() = H
d
().
Loperazione di minimizzazione di max |E()| negli intervalli 0
p
e

s
equivale dunque a minimizzare
p
(dopo averne ssato un valore a
priori non superabile), ssati M,
p
,
s
ed il rapporto =
p
/
s
.
Lalgoritmo di Remez viene costruito sulla base di un teorema che esprime le
condizioni per lottimalit` a, secondo il criterio minimax, di un ltro FIR a GLP:
il Teorema dellAlternanza, il cui enunciato `e il seguente.
Dato F, un qualsiasi sottoinsieme chiuso dellintervallo chiuso 0 ,
anche H() sia lunica migliore approssimazione di H
d
() su F `e necessario
e suciente che la funzione errore E() presenti su F almeno M+2 alternanze,
ossia punti
i
in cui il valore assoluto `e massimo ed il segno `e alterno:
E(
i
) = E(
i1
) = max |E()| =
con 1 i M + 1 (totale: M + 2 punti, con indice da 0 a M + 1), > 0 e con
frequenze

0

1

2
. . .
M+1
contenute in F.
La Fig. 5.14 mostra le alternanze di errore nel caso del nostro esempio. Il
Teorema dellAlternanza `e soddisfatto, essendoci M + 2 = 9 alternanze.
Si noti che
5.7. APPROSSIMAZIONI EQUIRIPPLE PER FILTRI FIR A GLP 165

s
0
/ =
s
1
p
1 +
p

H
(

0

1

2

3

4

5

6

7

8

0
+
E
(

)
Figura 5.14: Alternanze di errore E() per la risposta H() (punti sulla curva
rossa). Nellesempio (ltro di Tipo I con M = 7) abbiamo M+2 = 9 alternanze
le
i
sono i punti di picco di |E()|, ossia i punti in cui H() `e al limite
della tolleranza di errore;

p
e
s
sono sempre punti di massimo/minimo di E(), indipendente-
mente da M, e quindi rientrano nel set delle
i
, mentre non sono punti di
massimo/minimo di H().
Ora possiamo trarre le conclusioni:
H() pu` o avere al pi` u M 1 massimi e minimi locali in 0 < < ; lo
stesso si dimostra essere vero negli intervalli aperti combinati 0 < <
p
,

s
< < ; inoltre H() ha sempre un massimo o minimo locale in = 0
e = ; inne, in
p
e
s
si raggiunge il massimo della tolleranza, ossia
H(
p
) = 1
p
, H(
s
) =
s
.
In totale, nel nostro esempio passa-basso, che ha due bande e quindi un
singolo valore di
p
ed un singolo valore di
s
, possono esserci al massimo
M 1 + 2 + 2 = M + 3
frequenze a cui E()| raggiunge il suo massimo;
per il Teorema dellAlternanza debbono esserci al minimo M+2 alternanze
(massimi di |E()| con segni alterni di E()).
166 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Quindi la migliore approssimazione H() di H
d
() produce una E() con M+2
oppure M + 3 alternanze.
In
p
e
s
, |E()| `e sempre massimo, quindi restano, per |E()|, M oppure
M +1 picchi dovuti ai massimi e minimi locali di H(); = 0 e = possono
essere estremi della funzione derrore
entrambi, ed allora si hanno M + 3 oppure M + 2 alternanze,
uno solo dei due, ed allora si hanno M + 2 alternanze.
Per chiarire questo punto, nella Fig. 5.15 sono mostrati tutti i casi possibili: per
M, e larghezza della banda di transizione ssati, si vericher`a uno di questi
casi a seconda del valore di
p
(e quindi di
s
, essendo ssata la larghezza della
banda di transizione).
Nella Fig. 5.15,
p
assume quattro valori crescenti,
p1
<
p2
<
p3
<
p4
(ovviamente, ssando anche
p
la soluzione diviene unica).
1. Per
p
=
p1
, |E()| `e massimo in = ed in altri M 1 estremi locali
di H(), ma non in = 0. Quindi M estremi di H() rappresentano
estremi di |E()| ed includendo
p
e
s
si hanno M + 2 alternanze di
E().
2. Per
p
=
p2
, |E()| `e massimo sia in = 0, sia in = ed in altri M1
estremi locali di H(). Quindi M + 1 estremi di H() rappresentano
estremi di |E()| ed includendo
p
e
s
si hanno M + 3 alternanze di
E().
Questo `e un ltro con oscillazione extra o extraripple.
3. Per
p
=
p3
, |E()| `e massimo in = 0 ed in altri M1 estremi locali di
H() ma non in = . Quindi M estremi di H() rappresentano estremi
di |E()| ed includendo
p
e
s
si hanno M + 2 alternanze di E().
4. Per
p
=
p4
, |E()| `e massimo sia in = 0, sia in = ed in altri M2
estremi locali di H(). Quindi M estremi di H() rappresentano estremi
di |E()| ed includendo
p
e
s
si hanno M + 2 alternanze di E().
Dagli esempi fatti si capisce anche che se a priori non `e detto che H() sia equi-
ripple, per soddisfare il Teorema dellAlternanza H() deve essere eetiivamente
equiripple, eccetto eventualmente a = 0 oppure = .
Infatti se il nostro ltro venisse modicato come in Fig. 5.16, un picco (qui un
minimo relativo) diverso dagli altri in posizione dierente da = 0 oppure =
darebbe luogo ad errori massimi contigui dello stesso segno; se ne potrebbero
contare cos` soltanto 8 = M + 1 ed il Teorema dellAlternanza non sarebbe
soddisfatto.
5
.
7
.
A
P
P
R
O
S
S
I
M
A
Z
I
O
N
I
E
Q
U
I
R
I
P
P
L
E
P
E
R
F
I
L
T
R
I
F
I
R
A
G
L
P
1
6
7

p
=
p1
M + 2
0

p

s

s
0
+
s
1
p
1 +
p

H
(

p
=
p2
M + 3
Filtro extraripple
0

p

s

s
0
+
s
1
p
1 +
p

H
(

p
=
p3
M + 2
0

p

s

s
0
+
s
1
p
1 +
p

H
(

p
=
p4
M + 2
0

p

s

s
0
+
s
1
p
1 +
p

H
(

)
Figura 5.15: Come cambia la forma di H() facendo crescere
p
(
p1
<
p2
<
p3
<
p4
), mentre M, e la larghezza sono tenuti
ssi. In ogni riquadro `e indicato il numero di alternanze; solo in un caso esso vale M + 3, identicando cos` un ltro extraripple
168 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
M = 7
0

p

s

s
0
+
s
1
p
1 +
p

H
(

)
Figura 5.16: Come un estremo relativo di H() di entit`a diversa dagli altri,
in una posizione diversa da = 0 oppure = , d`a luogo ad errori massimi
adiacenti dello stesso segno, cos` che il Teorema dellAlternanza non `e soddi-
sfatto. In questo esempio (M = 7), un minimo meno profondo fa nascere due
errori massimi contigui dello stesso segno (cerchietti con crocetta) cos` che se
ne possono contare, ai ni delle alternanze, soltanto 8=M +1 (cerchietti rossi):
non abbastanza per soddisfare il teorema
Con una argomentazione simile si pu` o mostrare che
p
e
s
devono sempre essere
incluse tra le
i
di errore massimo, come illustrato in Fig. 5.17. Infatti togliere
una delle due frequenze dal set signicherebbe diminuire di due il numero di
alternanze, come prima.
Considerazioni analoghe possono essere fatte per un passa-alto ma non valgono
necessariamente per ltri passa-banda o multi-banda, che presentano un numero
maggiore di estremi di banda. Discuteremo questo tra poco.
La discussione precedente vale per il Tipo I. Per gli altri Tipi di ltri (II, III,
IV), come gi` a detto, il problema di approssimazione polinomiale viene risolto
analogamente, salvo poi tenere conto che F() = 1 e quindi H() = G().
5.8. STIMA A PRIORI DELLORDINE 169
M = 7
0

p

s

s
0
+
s
1
p
1 +
p

H
(

)
Figura 5.17: Perche
p
deve sempre essere inclusa tra le
i
di errore massimo:
il caso di un ipotetico ltro in cui, ad esempio,
p
non `e in posizione tale da
dare errore massimo ma `e un po inferiore (quadratino nero). Scomparendo
p
dal set di
i
di errore massimo, si vengono ad avere due errori massimi contigui
dello stesso segno (cerchietti con crocetta). In tal modo si possono contare solo
8=M+1 alternanze (cerchietti rossi): non abbastanza per soddisfare il Teorema
dellAlternanza
5.8 Stima a priori dellordine
Stimare a priori lordine necessario per soddisfare le speciche, e quindi stimare
M, `e necessario perche lordine stesso `e un parametro di input del progetto:
il processo iterativo per ottenere un ltro ottimo comincia assegnando i valori
iniziali delle M + 2 frequenze
i
alle quali si suppone che |E()| raggiunga il
suo massimo.
Per il ltro passa-basso, Kaiser ha proposto una formula empirica per stimare
approssimativamente lordine richiesto in base a =
s

p
,
p
e
s
specicati
a priori:
N =
20 log
10
_

s
13
2.324
dalla quale si comprende che a parit`a di tolleranze derrore, lordine del ltro
richiesto varia inversamente a .
Da questa stima si ricava poi M a seconda del tipo di ltro (I, II, III o IV).
170 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
A questo punto occorre far chiarezza su unapparente contraddizione. Abbiamo
detto in precedenza che per progettare il ltro si ssano lordine, quindi M, i
valori di
p
,
s
ed il rapporto =
p
/
s
, mentre leettivo valore di
p
(e quindi
di
s
) viene minimizzato. Ma per stimare lordine, vediamo ora che =
p
/
s
non basta, occorrono valori ssati a priori delle singole tolleranze
p
e
s
.
Nella pratica si parte proprio ssando
p
,
s
,
p
e
s
; si pu` o cos`, tramite la
formula empirica, farsi unidea dellordine necessario. In seguito, nel processo
di ottimizzazione (che riceve in input lordine, i valori di
p
,
s
ed il rapporto
=
p
/
s
), il valore di =
p
viene minimizzato (e quindi anche il valore di
s
,
mantenendosi costante il rapporto =
p
/
s
). Nella soluzione ottima lerrore
nale deve stare entro le
p
e
s
pressate; questo sar`a possibile solo se lordine
`e stato ssato sucientemente alto. Se questo `e vero, il lavoro di progetto `e
terminato ed il
p
eettivo, minimizzato, sar`a circa uguale o un po inferiore a
quello pressato. Se invece la stima a priori dellordine era carente, la soluzione
ottima deborder` a dalle speciche pressate. Allora si aumenter` a lordine nche
la soluzione ottima soddisfa le richieste, ricordandosi che se si `e partiti da ordine
pari, per esempio, occorrer` a salire di due unit`a per rimanere nellambito di un
ltro di Tipo I.
Per ogni valore dellordine occorre dunque un processo di ottimizzazione ite-
rativa ed `e chiaro come stimare bene n dallinizio lordine richiesto faccia
risparmiare tempo e mezzi di calcolo.
Il sosticato software necessario per il progetto minimax `e disponibile, ad esem-
pio, in MATLAB.
5.9 Procedimento iterativo per ltri ottimi
Si trova notizia in letteratura di modi diversi per attuare lalgoritmo MPR.
E istruttivo seguire una classica attuazione dellalgoritmo, per apprezzarne
lecienza. Riferiamoci come sempre al passa-basso di Tipo I.
1. Si inizializza il processo assegnando M +2 frequenze
i
(i = 0, M +1) su
cui si ipotizza che |E()| raggiunga il suo massimo. Si noti che M +2 `e il
minimo possibile numero di alternanze richiesto dallomonimo teorema. Le

i
potranno essere scelte, ad esempio, equidistanti su F, salvo contenere
sempre e comunque in posizioni contigue
p
e
s
, per cui se
i=l
=
p
,
allora
i=l+1
=
s
.
2. Per stimare lerrore nei punti
i
si scrivono M + 2 equazioni del tipo
E(
i
) = W(
i
)
_
G(
i
) H
d
(
i
)

= (1)
i
.
Se venisse assunto positivo, come fatto nora,
0
dovrebbe sicuramente
essere un massimo di E(),
1
un minimo, ecc... per cui
l
=
p
do-
vrebbe avere l dispari (in quanto in
p
lerrore `e certamente minimo). In
5.9. PROCEDIMENTO ITERATIVO PER FILTRI OTTIMI 171
realt`a si consente a di essere sia positivo, sia negativo, cos` che
0
non `e
necessariamente un massimo ma pu` o pure essere un minimo, e cos` via.
Il precedente sistema di M + 2 equazioni `e equivalente a
W(
i
)
_
M

n=0
[n] cos
n
(
i
) H
d
(
i
)
_
= (1)
i

le cui M + 2 incognite sono i coecienti [n] e , che deve venire mi-


nimizzato. Per lesempio del passa-basso che stiamo esaminando, pi` u
semplicemente
_
_
_
1
_

M
n=0
[n] cos
n
(
i
) 1
_
= (1)
i

M
n=0
[n] cos
n
(
i
) 0
_
= (1)
i
.
I parametri su cui giocare nel corso dellottimizzazione sono le
i
, che
devono essere determinate in modo tale che la soluzione, di sicuro ottima
in partenza sullinsieme delle
i
, sia in eetti, alla ne, ottima su tutto F:
in altri termini, alla ne deve essere lerrore massimo su tutto il dominio
F.
Quando ci`o si verica, le
i
sono - a parte
p
e
s
- eettivamente i
massimi ed i minimi del giusto polinomio G() con le giuste [n].
3. In linea di principio, a questo punto si deve risolvere il sistema rispetto a
ed alle [n], determinando cos` il polinomio trigonometrico G() = H()
che ha i valori giusti alle frequenze
i
inizialmente ssate.
Il polinomio cos` determinato passer`a per le
i
, ma in generale queste
non saranno - o almeno non tutte saranno - esattamente le posizioni dei
massimi e minimi locali del polinomio: questo perche lerrore di picco
calcolato `e troppo piccolo; le assegnazioni iniziali delle
i
non andavano
bene (com`e ovvio).
I massimi e minimi locali del polinomio in realt`a cadranno a certe altre
frequenze
i
.
4. Le posizioni
i
dei massimi e minimi locali del polinomio vengono deter-
minate con accuratezza, stimando i valori del polinomio su un insieme
tto di punti. Le
i
, pi` u
p
e
p
che vengono tenuti ssi, vengono scelte
come nuove frequenze su cui ripetere la procedura. Questo `e appunto lex-
change step che d`a il nome di multiple exchange algorithm allalgoritmo
di Remez.
Se c`e un massimo della funzione derrore sia a = 0, sia a = , nel
nuovo set di frequenze
i
si inserisce quello che corrisponde allerrore pi` u
grande.
Contemporaneamente, viene aggiornato il valore di picco dellerrore, che
cos` cresce rispetto al passo precedente.
5. Si itera nche
i

i
per tutte le i scende sotto un piccolo valore pressato
e , dapprima crescente, si stabilizza.
172 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
6. Alla ne si ottiene la risposta in frequenza e la risposta allimpulso del
ltro ottimo.
Questi passaggi sono illustrati nelle Fig. 5.18, 5.19 e 5.20.
La Fig. 5.18 mostra la forma della risposta a fase nulla (il nostro polinomio) ai
vari stadi iterativi di una tipica procedura come quella descritta. Nellesempio,
che `e quello di un passa-basso di Tipo I di ordine N 1 = 20 con = 1,

p
= 0.4 e = 0.1, la convergenza avviene dopo 7 iterazioni e ad ogni stadio
di iterazione, le posizioni dei massimi e minimi locali del polinomio cambiano.

H
(

)

0

s
0
+
s
1
p
1
1 +
p
Iterazione 1
Iterazione 2
Iterazione 3
Iterazione 4
Iterazione 5
Iterazione 6
Iterazione 7
Figura 5.18: Cambiamenti di forma della risposta a fase nulla nei vari stadi di
iterazione dellalgoritmo di Remez per il progetto di un passa-basso di Tipo I di
ordine N 1 = 20 con = 1,
p
= 0.4 e = 0.1. La convergenza avviene
dopo 7 iterazioni
La Fig. 5.19 `e un ingrandimento della banda passante del ltro, negli stadi di
iterazione n. 2 (blu) e n. 3 (verde). Le frequenze di picco delliterazione n. 2
sono visibili sulla curva polinomiale blu spessa (cerchietti e linee tratteggiate
blu verticali). Le linee orizzontali blu sottili rappresentano il valore di per
literazione n. 2. Nelliterazione successiva n. 3, tali frequenze di picco ven-
gono assunte come nuove frequenze
i
a cui si suppone che il nuovo polinomio
raggiunga le tolleranze di errore aggiornate (linee sottili orizzontali verdi). In
realt`a il nuovo polinomio `e la curva verde spessa, che non solo raggiunge ma
supera le tolleranze. I punti di intersezione del nuovo polinomio con le linee di
tolleranza derrore sono segnate dai quadratini rossi.
5.9. PROCEDIMENTO ITERATIVO PER FILTRI OTTIMI 173
Si noti che nemmeno la curva polinomiale verde delliterazione n. 3 ha i massimi
ed i minimi al punto giusto perche siamo ancora a stadi intermedi di iterazione:
le iterazioni dovranno proseguire.
0
1
p
1
1 +
p

H
(

)
Figura 5.19: Ingrandimento della banda passante del ltro di Fig. 5.18, negli
stadi di iterazione n. 2 (blu) e 3 (verde). I quadratini rossi evidenziano come
ad un dato stadio di iterazione (sia il n.3) le frequenze di picco del polinomio
dello stadio iterativo precedente (n. 2) vengano assunte come nuove frequenze
alle quali si suppone che il polinomio raggiunga lerrore massimo. Allo stadio
n.3 non vi `e ancora convergenza del processo, come si vede dal fatto che anche
la nuova curva (verde) non ha i massimi ed i minimi nelle posizioni indicate dai
quadratini rossi
Inne, la Fig. 5.20 `e ancora un ingrandimento della banda passante del ltro,
negli stadi di iterazione n. 1 (nero), n. 2 (blu), n. 3 (verde) e n. 4 (viola).
La gura `e volta a mostrare come ad ogni passo iterativo lerrore massimo
calcolato (linee orizzontali sottili) cresce. Nella gura si vede anche come viene
calcolato: guardando lerrore alla frequenza zero. La crescita dellerrore da una
iterazione alla successiva diverr` a via via pi` u lenta ad ogni iterazione, no a
quando lerrore non crescer`a pi` u e la convergenza sar`a raggiunta.
Quanto esposto sopra vale in linea di principio; in realt`a si sono trovati modi
per alleggerire i calcoli.
174 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
0
1
p
1
1 +
p

H
(

)
Figura 5.20: Ingrandimento della banda passante del ltro di Fig. 5.18, negli
stadi di iterazione n. 1 (nero), n. 2 (blu), n.3 (verde) e n.4 (viola). Si noti
come ad ogni passo iterativo lerrore massimo calcolato (linee orizzontali sottili)
cresce
Ad esempio, si trova che nel sistema delle M + 2 equazioni scritte prima pu` o
essere calcolato esplicitamente in funzione di tutti i valori di H
d
(
i
), W(
i
) e
di una quantit`a

i
=
M+1

k=0
(cos
i
cos
k
)
1
con k = i.
Questa quantit`a contiene le
i
, che, come visto, nei passi intermedi di iterazione
non saranno quelle giuste; come risultato lerrore calcolato sar`a troppo piccolo.
Una volta noto , per valutare G() su ogni punto dellinsieme tto di frequenze
e quindi dedurre le nuove
i
per lexchange step, non occorre risolvere il siste-
ma, cio`e trovare i coecienti [n] del polinomio: si pu` o usare una formula di
interpolazione di Lagrange basata sui valori G(
i
), che sono noti perche
G(
i
) = H
d
(
i
) +
(1)
i

W(
i
)
.
Quindi solo i valori nali delle [n] (da cui ricavare gli h[n]) sono necessari.
Perci`o basta
5.10. PROPRIET
`
ADEI FILTRI FIR OTTIMI SECONDOIL CRITERIOMINIMAX175
1. partire da un set di
i
;
2. calcolare
i
, H
d
(
i
) e W(
i
) ad ogni i e valutare ;
3. calcolare G(
i
), interpolare per avere G() su un set tto di frequenze e
localizzare i massimi/minimi di G();
4. ssare le nuove
i
ed iterare dal punto n. 2 no alla convergenza;
5. alla ne si risolver`a il sistema per le [n] o meglio, si far`a una DFT inversa
della H() ottenuta, per avere direttamente gli h[n] del ltro, che ha il
p
minore possibile per i ssati N,
p
, e .
Saranno necessarie da 4 a 8 iterazioni per un passa-basso e 2-3 volte tanto per
ltri pi` u complessi.
Se la soluzione nale non rientra nelle tolleranze ssate a priori, bisogner` a salire
con lordine e ripetere la procedura.
5.10 Propriet`a dei ltri FIR ottimi secondo il
criterio minimax
E interessante esaminare la dipendenza dellerrore massimo ottimizzato dalla
frequenza di taglio
p
, a parit`a di genere di ltro (sia come sempre un passa-
basso) ed a parit`a di valori di e , per ordini diversi.
Il graco che si ottiene `e presentato in Fig. 5.21. Gli ordini considerati vanno
da 8 a 11 (N da 9 a 12): si tratta quindi di Filtri sia di Tipo I (N = 9 e 11),
sia di Tipo II (N = 10 e 12).
Le curve in Fig. 5.21 mostrano che al crescere di
p
, lerrore massimo raggiunge
minimi locali.
Le curve relative ad ordini diversi si intersecano: quindi per certe
p
, un ltro
pi` u corto (ad esempio N = 9) pu` o essere migliore (cio`e avere un errore pi` u
piccolo) di uno pi` u lungo (N = 10). Come mai? La ragione sta nel fatto che
N = 9 e N = 10 identicano ltri di tipo diverso (Tipo I e II). Naturalmente
un ltro con N = 9 non pu` o essere migliore, a parit`a di
p
, di un ltro con
N = 11, che `e dello stesso Tipo I.
Questo `e ben visibile nella Fig. 5.22, dove ci si `e ristretti a ltri di un solo tipo
(Tipo I). Gli ordini rappresentati nella gura sono N1 = 14, 16 e 18 (N = 15,
17 e 19). Le curve non si intersecano.
Graci come questo sono chiaricatori perche consentono di capire meglio come
in certi casi emergano soluzioni extraripple ed in altri casi invece emergano
soluzioni normali (cfr. sezione 5.7). Allo scopo, esaminiamo un ingrandimento
di una parte della Fig. 5.22, mostrato in Fig. 5.23.
176 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
0 0.2 0.4 0.6 0.8
0
0.02
0.04
0.06
0.08
0.10
0.12
0.14



Tipo I, N=9, M=4
Tipo II, N=10, M=5
Tipo I, N=11, M=5
Tipo II, N=12, M=6
Figura 5.21: Come varia lerrore massimo in banda passante o oscura (in esempi
di passa-basso con = 1) al variare della frequenza di taglio
p
, per vari valori
dellordine (N 1). Filtri di Tipo I e di Tipo II. Ampiezza della banda di
transizione pari a 0.2
I quadratini colorati con colori dierenti e marcati con le lettere A-F in Fig. 5.23
rappresentano sei ltri, diversi fra loro soltanto per il preciso valore della fre-
quenza di taglio
p
. Essi giacciono sulla curva blu in gura, e quindi hanno
ordine N 1 = 16. Tuttavia le curve relative ad ordini diversi, pur non in-
tersecandosi, nondimeno si toccano nei punti di minimo locale: ad esempio nel
punto C la curva blu di ordine 16 tocca quella rossa di ordine 18; nel punto E
la curva blu di ordine 16 tocca quella nera di ordine 14; nel punto F la curva
blu di ordine 16 tocca di nuovo quella rossa di ordine 18. Che signicato hanno
i punti come C, E, F?
Il signicato si evince dalla Fig. 5.24, che riporta le risposte a fase nulla di
ciascuno dei sei ltri A-F.
Partiamo dal caso C (viola): si tratta di un ltro extraripple per lordine
16, che presenta una risposta a fase nulla dotata di M +1 estremi uguali.
Il numero di alternanze `e M+3. In eetti, tutti i minimi locali della curva
di un dato ordine in Fig. 5.22 corrispondono a ltri con oscillazione extra.
Diminuendo
p
, ritroviamo il caso B (rosso): ora il numero di estremi `e
ancora M + 1 ma lestremo a = 0 ha entit`a minore degli altri estremi.
Il numero di alternanze `e M + 2 (soluzione normale).
5.10. PROPRIET
`
ADEI FILTRI FIR OTTIMI SECONDOIL CRITERIOMINIMAX177
0 0.2 0.4 0.6 0.8
0.04
0.06
0.08
0.10
0.12
0.14
0.16
0.18



N=15, M=7
N=17, M=8
N=19, M=9
Figura 5.22: Filtri di Tipo I: come varia lerrore massimo in banda passante o
oscura (in esempi di passa-basso con = 1) al variare della frequenza di taglio

p
, per vari valori dellordine (N 1). Ampiezza della banda di transizione pari
a 0.1. Il rettangolo verde delimita la zona del graco che appare, ingrandita,
nella Fig. 5.23
Diminuendo ancora
p
, giungiamo al caso A (arancio): il minimo in = 0
che nel caso B era meno pronunciato degli altri ora `e scomparso, lasciando
M estremi uguali e M + 2 alternanze.
Ripartendo da C, aumentiamo
p
arrivando al caso D (marrone). Il nu-
mero di estremi `e ancora M +1 come in C ma lestremo a = ha entit`a
minore degli altri estremi. Il numero di alternanze `e M + 2.
Aumentando ancora
p
abbiamo il caso E (verde). Lestremo a =
che in D aveva entit`a minore degli altri estremi `e scomparso, lasciando M
estremi uguali e M + 2 alternanze.
Inne aumentando ulteriormente
p
troviamo il caso F (azzurro). In = 0
`e apparso un massimo uguale agli altri. Il numero di estremi `e M + 1 ed
il numero di alternanze `e M + 3: si tratta nuovamente di una soluzione
extraripple per lordine 16, come atteso visto che costituisce, come il punto
C, un minimo locale della curva di ordine 16 in Fig. 5.22.
I punti C e F in Fig. 5.22 per` o appartengono anche allordine 18, mentre il punto
E appartiene anche allordine 14. Che succede in quei punti?
178 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
A
B
C
D
E
F
0.36 0.40 0.44 0.48 0.52
0.06
0.08
0.10
0.12

Figura 5.23: Ingrandimento di una parte della Fig. 5.22, con identicazione di
sei ltri diversi (rappresentati con quadratini di dierenti colori, contrassegnati
dalle lettere da A a F), la cui risposta a fase nulla `e mostrata nella Fig. 5.24
Succede che il ltro C `e extraripple per lordine 16 ma `e anche una soluzione
ottima non extraripple per lordine 18.
Analogamente, il ltro F `e extraripple per lordine 16 ma `e anche una soluzione
ottima non extraripple per lordine 18.
Quanto al ltro E, `e una soluzione normale per lordine 16 ma `e anche una
soluzione extraripple per lordine 14.
Tutto ci`o si spiega col fatto che - ad esempio - per lordine 18 il ltro progettato
ha il primo e lultimo campione di h[n] nulli quando lordine 16 ha la soluzione
extraripple (come in C oppure F). Il ltro C `e lo stesso se progettato sia ssando
lordine a 16, sia ssandolo a 18; le risposte a fase nulla che si ottengono sono
identiche e le risposte allimpulso pure, salvo il fatto che allordine 18 compare
uno zero in pi` u a ciascuno dei due estremi della sequenza che rappresentava h[n]
allordine 16.
I ltri di Tipo II hanno propriet` a analoghe, salvo il fatto che la risposta in
frequenza si annulla sempre a = .
5
.
1
0
.
P
R
O
P
R
I
E
T
`
A
D
E
I
F
I
L
T
R
I
F
I
R
O
T
T
I
M
I
S
E
C
O
N
D
O
I
L
C
R
I
T
E
R
I
O
M
I
N
I
M
A
X
1
7
9
A
0 0.2 0.4 0.6 0.8

0
1

H
(

)
B
0 0.2 0.4 0.6 0.8

0
1

H
(

)
C
0 0.2 0.4 0.6 0.8

0
1

H
(

)
D
0 0.2 0.4 0.6 0.8

0
1

H
(

)
E
0 0.2 0.4 0.6 0.8

0
1

H
(

)
F
0 0.2 0.4 0.6 0.8

0
1

H
(

)
Figura 5.24: Risposta a fase nulla di ciascuno dei sei ltri di Tipo I identicati dai quadratini di diverso colore e dalle lettere A-F nella
Fig. 5.23. I colori delle curve e le lettere nei vari pannelli corrispondono a colori e lettere usati nella Fig. 5.23. La gura illustra le
variazioni di forma della risposta a fase nulla di un ltro passa-basso di Tipo I con ordine N 1 = 16 (M = 8) al variare di
p
180 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
5.11 Il metodo minimax per i ltri passa-banda
In precedenza abbiamo trattato il caso passa-basso che, come il passa-alto, ha
solo due bande in cui minimizzare lerrore (bande di approssimazione).
Invece i passa-banda ed i ferma-banda hanno tre bande di approssimazione ed
il Teorema dellAlternanza ha dierenti implicazioni in questi casi.
Il teorema non ssa limiti sul numero di bande, per cui il numero minimo di
alternanze resta M + 2. Per` o se il passa-basso ha quattro limiti di banda (0,

p
,
s
, ), i ltri multibanda ne hanno di pi` u, ad esempio un passa-banda ne
ha sei (0,
s1
,
p1
,
p2
,
s2
, ) e di conseguenza questi ltri possono arrivare
ad avere pi` u di M + 3 alternanze.
Ci` o signica che alcune aermazioni fatte per i passa-basso non sono pi` u valide:
per esempio non `e necessario che tutti i massimi ed i minimi locali di H()
cadano entro le bande di approssimazione, ma ci possono essere estremi locali che
cadono nelle bande di transizione, e lapprossimazione pu` o non essere equiripple
nelle bande di approssimazione.
Naturalmente tali ltri sono ottimi nel senso del Teorema dellAlternanza ma
nelle applicazioni sono in genere ritenuti inaccettabili.
In generale, non vi `e garanzia che le bande di transizione di un ltro multibanda
siano monot`one, perche lalgoritmo MPR le lascia del tutto libere da vincoli.
Per` o quando una certa scelta dei parametri conduce a soluzioni non equiripple o
con bande di transizione non monot`one in genere si riprogetta il ltro variando
un po lordine, oppure una o pi` u frequenze limite di banda, o ancora la funzione
peso dellerrore, no ad ottenere una soluzione dallandamento regolare.
5.12 Cenni sul progetto di ltri IIR
Come anticipato prima, in questo corso esamineremo solo progetti FIR; per i
progetti IIR ci limitiamo ad un cenno.
Il progetto IIR si basa sulle tecniche di progetto di ltri analogici. Tipicamente:
1. si sceglie un metodo per trasformare un dato ltro analogico in uno nu-
merico avente risposta in frequenza simile;
2. si trasformano le speciche del ltro numerico IIR voluto in altre, equiva-
lenti, di un IIR analogico;
3. si progetta il ltro analogico in accordo con le speciche trasformate (in
modo tale che, dopo la trasformazione da ltro analogico a ltro numerico,
questultimo soddis le proprie speciche);
5.13. ATTUAZIONE DEL FILTRAGGIO NUMERICO 181
4. si converte il ltro analogico progettato nel ltro numerico equivalente.
Un vantaggio di questa procedura `e che il progetto di ltri analogici `e stato
studiato a fondo ed `e quindi ben collaudato; uno svantaggio `e che il progetto
risulta limitato ai tipi di base dei ltri selettivi in frequenza e manca di versati-
lit`a. Il procedimento si basa sempre su un progetto passa-basso, al quale gli altri
tre generi di ltri (passa-alto, passa-banda e ferma-banda) vengono ricondotti
mediante trasformazioni di frequenza.
I ltri analogici pi` u noti sono:
1. di Butterworth (monot` oni in banda passante ed oscura);
2. di Chebyshev (oscillanti in banda passante e monot`oni in banda oscura:
Tipo I; o viceversa: Tipo II);
3. ellittici (oscillanti in entrambe le bande).
Tra le procedure pi` u comuni per trasformare il ltro analogico in digitale citiamo
inne la trasformazione bilineare (limitandoci, per` o, a citarla).
5.13 Attuazione del ltraggio numerico
1. Filtri FIR
Il progetto determina h[n]. Si procede poi a ltrare nel dominio del
tempo mediante un programma software che attui la convoluzione
lineare tra h[n] e la sequenza da ltrare x[n], a partire da un certo
n
0
(tipicamente n
0
= 0): la sequenza ltrata `e
y[n] =
N1

k=0
x[k]h[n k] =
N1

k=0
x[n k]h[k].
Nel caso di fase lineare o lineare generalizzata, la simmetria di h[n]
consente di risparmiare sul numero di operazioni.
Alternativamente, si pu` o ltrare nel dominio della frequenza.
Ricordiamo che data una sequenza x[n] (n = 0, N1) ed una risposta
allimpulso h[n] (n = 0, N

1), la convoluzione lineare y[n] = x[n]


h[n] ha lunghezza N + N

1 (ossia y[n] ha indice n esteso da 0 a


N +N

2).
Pertanto il ltraggio nel dominio della frequenza richieder` a le seguenti
operazioni:
(a) allungamento di x[n] con un padding di zeri no a lunghezza
L N+N

1 e successiva DFT per ottenere X[k], k = 0, L1;


182 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
(b) allungamento di h[n] con un padding di zeri no a lunghezza
L N+N

1 e successiva DFT per ottenere H[k], k = 0, L1;


(c) prodotto termine a termine delle due trasformate, ossia Y [k] =
X[k] H[k], k = 0, L 1;
(d) trasformata inversa di Y [k] per avere y[n], n = 0, L 1. Se si `e
scelto L > N +N

1, al fondo di y[n] ci saranno degli zeri che


possono poi venire eliminati.
Questo `e un approccio apparentemente involuto, ma molto comodo
e molto usato.
Si noti che se x[n] `e reale, per avere una sequenza ltrata che sia
anchessa reale bisogna scegliere una H(e
j
) tale che sia H(e
j
) =
H

(e
j
). Questo `e assicurato, ad esempio, nel caso di fase lineare, in
cui H(e
j
) = H()e
j
con H() reale.
2. Filtri IIR
Il progetto determina
H(z) =

N
k=0
b
k
z
k

N
k=0
a
k
z
k
oppure, equivalentemente, lequazione alle dierenze (LCCDE)
y[n] =
N

k=0
b
k
x[n k]
N

k=1
a
k
y[n k].
La conoscenza dei coecienti a
k
e b
k
consente di ltrare ricorsiva-
mente nel dominio del tempo calcolando loutput y[n] a partire da un
dato valore n = n
0
(tipicamente n
0
= 0), per una sequenza di valori
di input partenti da n = n
0
, con un dato set di condizioni iniziali
{y[n], n = n
0
1, n
0
2, . . . n
0
N}. In altre parole, per il calco-
lo della sequenza ltrata i campioni dellinput antecedenti a n = n
0
sono assunti nulli e per quelli delloutput antecedenti a n = n
0
si
danno le condizioni iniziali, in numero uguale a N.
A causa degli inevitabili eetti dellaritmetica a precisione nita, un
ltro IIR `e sempre attuato come cascata di sezioni di ordine 2 (pi` u,
eventualmente, una sezione di ordine 1).
5.14 Filtraggio a fase nulla
E disponibile una tecnica che consente di ltrare un segnale annullando il ritardo
delloutput rispetto allinput; complessivamente quindi il ltraggio `e a fase nulla.
La tecnica `e detta forward-reverse ltering ossia, letteralmente, ltraggio in
avanti ed allindietro.
La fase complessivamente nulla si ottiene infatti ltrando dapprima (ad esempio
tramite lequazione alle dierenze) il segnale in avanti, poi rovesciando la
5.15. TECNICA DI FILTRAGGIO CON DECIMAZIONE 183
sequenza ltrata e ltrandola nuovamente. La sequenza di output nale non
presenta sfasamento rispetto allinput e lordine del ltro si raddoppia.
Inoltre i transitori iniziali di ogni ltraggio vengono minimizzati con vari accor-
gimenti, cos` che la serie ltrata ha la stessa lunghezza utile di quella iniziale.
Lo schema operativo del forward-reverse ltering `e il seguente:
x[n] h[n] g[n];
g[n] h[n] r[n];
y[n] = r[n].
5.15 Tecnica di ltraggio con decimazione
In certe applicazioni di ltraggio pu` o sorgere la necessit` a di modicare la fre-
quenza di campionamento, cos` da spostare la banda di frequenze discrete su cui
il ltro opera (ad esempio la banda passante di un ltro selettivo) da un certo
intervallo di frequenze analogiche ad un altro di interesse.
La Fig. 5.25 illustra appunto come gli estremi
c1
e
c2
della banda passante
di un ltro (in generale) passa-banda, che nel caso in cui ad essere ltrato
sia un segnale con passo di campionamento T
c
si traducono in un intervallo
passante di frequenze analogiche (f
c1
, f
c2
), si traducono invece in un diverso
intervallo passante (f

c1
, f

c2
) quando il passo di campionamento viene cambiato,
assumendo il valore T

c
.
La variazione del passo di campionamento pu` o essere
un aumento di T
c
, ossia una decimazione del segnale da ltrare (in inglese,
downsampling), oppure
una diminuzione di T
c
, ossia una interpolazione del segnale da ltrare
(upsampling).
Ci limitiamo a trattare il primo caso, pi` u frequente nei casi pratici di nostro
interesse.
Prima di procedere osserviamo che ovviamente la questione pu` o essere consi-
derata anche da un punto di vista diametralmente opposto: quello di cambiare
il passo di campionamento per spostare un dato intervallo di frequenze analo-
giche (quindi di periodi analogici - non dimentichiamo che i sici pensano
normalmente in termini di periodi e non di frequenze!) da un certo intervallo
di frequenze adimensionali ad un altro. Tipico in questo senso `e lesempio di
quando si desidera eettuare un ltraggio passa-basso molto spinto, che por-
terebbe ad una banda passante tutta schiacciata presso lo zero dellasse :
184 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Figura 5.25: Un ltro numerico, ad esempio un passa-banda, ha una banda
passante (
c1
,
c2
) che, tradotta in frequenze analogiche f[Hz] quando il passo
di campionamento vale T
c
, `e (f
c1
, f
c2
). Se si cambia il passo di campionamento,
portandolo ad un T

c
= T
c
, lintervallo passante di frequenze analogiche diviene
(f

c1
, f

c2
)
a volte si preferisce decimare preventivamente i dati, cos` da avere a che fare
con una banda passante pi` u ampia in termini adimensionali. Questo permette
di gestire meglio il progetto, soprattutto in termini di ampiezza della banda di
transizione e quindi di ordine.
Ma possiamo decimare senza preoccuparci di nulla o dobbiamo prendere del-
le precauzioni? Come al solito la risposta sta nello studio degli eetti della
decimazione nel dominio della frequenza.
Prendiamo dunque un segnale x[n] (n = 0, N 1) e con una operazione che -
ricordiamo - `e lineare ma non invariante alla traslazione, decimiamolo con un
fattore di decimazione k
dec
intero e maggiore di 1, ottenendo un segnale x
d
[n]:
x
d
[n] x[k
dec
n]
cos` che il passo di campionamento originario del segnale, T
c
, divenga T

c
=
k
dec
T
c
. La Fig. 5.26 riporta un esempio di decimazione.
Anche x
d
[n] sia privo di aliasing, il segnale analogico x(t) da cui si immagina
di aver tratto x[n] deve essere limitato in banda, nellintervallo
1
2T

c
f
1
2T

c
,
ossia f

Ny
f f

Ny
, avendo chiamato f

Ny
=
1
2T

c
la frequenza di Nyquist del
segnale decimato.
Per evitare laliasing quindi il contenuto spettrale di X(e
j
) esterno a |f| =
f

Ny
, posto che esista, deve venire rimosso ltrando x[n] con un ltro passa-
basso numerico anti-aliasing prima della decimazione. Si noti che in termini di
frequenze analogiche discrete, |f| = f

Ny
=
1
2T

c
=
1
2k
dec
T
c
si traduce in || =
5.15. TECNICA DI FILTRAGGIO CON DECIMAZIONE 185
0 20 40 60 80 100
n
x
[
n
]
Figura 5.26: Esempio di decimazione di un fattore k
dec
intero (qui k
dec
= 8).
In rosso sono evidenziati i campioni selezionati
2T
c
2k
dec
T
c
=

k
dec
: questa `e la frequenza angolare di taglio che il passa-basso anti-
aliasing deve avere.
Chiamiamo x
f
[n] il segnale di output del ltro anti-aliasing. Da x
f
[n] ricavere-
mo poi x
d
[n] prendendo un dato ogni k
dec
dati: x
d
[n] = x
f
[k
dec
n].
Per studiare gli eetti della decimazione ci occorre lo spettro del segnale deci-
mato. Si dimostra che
X
d
(e
j
) =
1
k
dec
k
dec
1

i=0
X
f
_
e
j(2i)/k
dec
_
,
ossia che lo spettro del segnale decimato `e la sovrapposizione di k
dec
immagini di
X
f
(e
j
) traslate e scalate in frequenza (in inglese, shifted and stretched). Lo-
perazione di stretching `e rappresentata dalla divisione per k
dec
dellargomento
dellesponenziale (espansione dellasse delle frequenze di un fattore k
dec
); lope-
razione di shifting `e invece rappresentata dal termine 2i, il quale implica
che due immagini adiacenti di X
f
(e
j
) scalate e traslate sono separate di 2 in
.
Notiamo la somiglianza di questa formula con quella che esprime il Teorema del
Campionamento.
186 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
La forma di X
d
(e
j
) ci dice che per evitare laliasing, X
f
(e
j
) deve essere nullo
per

k
dec
< || < , cio`e che, come detto sopra, il passa-basso ideale anti-alising
deve avere il taglio in frequenza a
c
=

k
dec
, ossia
c
=
1
2k
dec
, ossia ancora
f
c
=
1
2k
dec
T
c
= f

Ny
.
Prima di proseguire, facciamo una piccola digressione.
La formula data per X
d
(e
j
) esprime una propriet` a di scaling nel tempo della
DTFT, analoga a quella della teoria di Fourier dei segnali analogici, che `e la
seguente: dato un segnale x(t) con trasformata di Fourier analogica F {x(t)}
X(f) e presa una costante a reale non nulla, si ha
F {x(at)} =
1
|a|
X
_
f
a
_
.
Infatti lespressione x
f
[k
dec
n] rappresenta proprio uno scaling nel tempo di
x
f
[n], la cui controparte nel dominio della frequenza `e appunto
X
d
(e
j
) =
1
k
dec
k
dec
1

i=0
X
f
_
e
j(2i)/k
dec
_
,
formula analoga a quella sopra citata per segnali analogici.
Nel caso dei segnali analogici esiste anche una propriet` a di scaling in frequenza:
indicando con F
1
{} la trasformata inversa di Fourier in campo analogico,
1
|a|
x
_
t
a
_
= F
1
{X(af)}
ossia
F
_
1
|a|
x
_
t
a
__
= X(af).
Per a =
1
k
dec
evidentemente si ricade nel caso precedente;
il caso a < 1 ma non uguale allinverso di un fattore intero non trova
immediata corrispondenza in ci`o che si `e visto nella teoria dei segnali a
tempo discreto; inne
il caso a > 1 intero pu` o essere posto in analogia al caso discreto del-
lupsampling di un fattore intero k
int
, cio`e al caso in cui si denisca un
segnale con T
c
ridotto - ossia un segnale interpolato - x
i
[n] = x
_
n
k
int
_
con
n = 0, k
int
, 2k
int
, . . ..
Linterpolazione si ottiene con inserzione di zeri e successivo ltraggio con
uno speciale ltro passa-basso.
Non ci soermiamo oltre su questo argomento.
5.15. TECNICA DI FILTRAGGIO CON DECIMAZIONE 187
Tornando al caso della decimazione, abbiamo parlato delle caratteristiche che
deve avere il passa-basso anti-aliasing ideale, ma questo non `e realizzabile. Do-
vendosi accontentare di un passa-basso realizzabile con larghezza non nulla della
banda di transizione, si applicher`a su
c
un fattore di sicurezza; ad esempio si
potr`a fare in modo che sia
s
, piuttosto che
p
, a coincidere con

k
dec
.
Nelle Fig. 5.27, 5.28 e 5.29 `e illustrato il processo di decimazione con e senza
aliasing nel dominio della frequenza.
In Fig. 5.27, prima della decimazione `e stato applicato il ltro anti-aliasing, per
cui nellintervallo (, ) lo spettro del segnale che viene decimato `e diverso da
zero solo in || <

k
dec
(pannello a; lesempio `e per k
dec
= 3). Questa `e una
condizione di assenza di aliasing.
La forma scalata in frequenza di X
f
(e
j
) (pannello b, caso i = 0 ossia solo
stretching e nessuna traslazione) ha repliche che appaiono stirate rispetto alla
forma dello spettro X
f
(e
j
), cos` che ora nellintervallo principale lo spettro
occupa tutto lintervallo stesso, (, ).
I pannelli c e d mostrano la traslazione associata allo stretching, per tutti gli
altri casi di interesse, ossia i = 1 e i = 2 (si ricordi che nella formula per lo
spettro del segnale decimato compare una sommatoria su i = (0, k
dec
1)).
Inne, la forma di X
d
(e
j
) `e visibile nel pannello e: questo spettro `e dato dalla
somma degli spettri nei pannelli b, c e d, moltiplicata per
1
k
dec
. Si noti leettiva
assenza di aliasing (la forma dello spettro X
f
(e
j
) `e preservata).
In Fig. 5.28, invece, non `e stato applicato alcun ltro anti-aliasing prima della
decimazione; si decima direttamente il segnale originario x[n] il cui spettro oc-
cupa tutto lintervallo principale (, ) (pannello a). Questa `e una condizione
di aliasing.
La forma scalata in frequenza di X
f
(e
j
) (pannello b, caso i = 0; lesempio `e
ancora per k
dec
= 3) ora ha repliche che debordano, ad esempio la replica
centrata su = 0 occupa (3, 3).
Passando ora alla Fig. 5.29, vediamo nel pannello in alto (b) ancora il caso i = 0
e nei pannelli c e d i casi i = 1 e i = 2.
La forma di X
d
(e
j
) nel pannello e, somma degli spettri nei pannelli b, c e d
moltiplicata per
1
k
dec
, mostra laliasing: la forma dello spettro X
f
(e
j
) non `e
pi` u riconoscibile.
188 CAPITOLO 5. PROGETTO DI FILTRI NUMERICI
Figura 5.27: Rappresentazione spettrale di un segnale a tempo discreto che
viene decimato con un fattore k
dec
, uguale a 3 in questo esempio, nel caso in
cui il segnale `e a banda limitata (cio`e ha spettro non nullo solo in una parte
dellintervallo principale, || <

k
dec
). Condizione di assenza di aliasing
Figura 5.28: Rappresentazione spettrale di un segnale a tempo discreto che
viene decimato con un fattore k
dec
, nel caso in cui lo spettro del segnale prima
della decimazione si estende su tutto lintervallo principale. Lo spettro scalato
in frequenza di un fattore k
dec
deborda dallintervallo principale
5.15. TECNICA DI FILTRAGGIO CON DECIMAZIONE 189
Figura 5.29: Rappresentazione spettrale di un segnale a tempo discreto che
viene decimato con un fattore k
dec
, nel caso in cui lo spettro del segnale prima
della decimazione si estende su tutto lintervallo principale (proseguimento di
Fig. 5.28). Quando si sommano le repliche traslate dello spettro scalato in
frequenza, si verica aliasing.
Parte III
Analisi spettrale stazionaria
190
Capitolo 6
Segnali deterministici:
spettro di energia
Continuando a riferirci ad un segnale deterministico x[n], ricordiamo di averne
denito la DTFT, X(e
j
), quantit`a complessa che descrive il segnale nel do-
mino della frequenza. Ricordiamo inoltre di avere denito lenergia del segnale
come E =

+
n=
|x[n]|
2
. Ci prepariamo ora ad introdurre una quantit`a reale
capace di descrivere la distribuzione in frequenza dellenergia del segnale con-
siderato. La quantit`a che deniremo prende il nome di spettro di energia ed `e
quella normalmente usata per esprimere la variabilit`a di un segnale in termini
di oscillazioni sinusoidali, ossia quella adottata per eseguire lanalisi di Fourier
dei segnali deterministici a tempo discreto.
Prima di procedere, ci serve introdurre e quanticare il concetto di correlazione.
6.1 Correlazione di segnali a tempo discreto
La correlazione `e unoperazione matematicamente simile alla convoluzione, che
si esegue su due segnali quando si vuole misurarne il grado di somiglianza.
La correlazione fra due segnali (o di un segnale con se stesso, nel qual caso si par-
la di autocorrelazione) ha importanti applicazioni, specie nel campo dei segnali
random, dove ne permette una rappresentazione spettrale altrimenti impossibile.
Supponiamo per` o, per il momento, di rimanere nellambito deterministico e
di avere due sequenze reali
1
x[n] e y[n] di energia nita. Deniamo la cross-
1
Qui e nel resto della Parte III ci riferiamo a segnali reali al ne di semplicare la notazione.
191
192 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
correlazione o correlazione incrociata di x[n] con y[n] come

xy
[l] =
+

n=
x[n]y[n l] =
+

n=
x[n +l]y[n]
dove l rappresenta un ritardo in termini di tempo discreto, detto lag.
Analogamente, la cross-correlazione di y[n] con x[n] sar`a

yx
[l] =
+

n=
y[n]x[n l] =
+

n=
y[n +l]x[n].
Queste quantit`a possono essere maggiori, uguali o minori di zero ed esprimono
il fatto che le variazioni di una variabile accompagnino (o non accompagnino)
quelle dellaltra. Ad esempio,
xy
[l] sar`a grande se le variazioni di y[n l]
sono simili alle variazioni di x[n].
Se
xy
[l] > 0 si parla propriamente di correlazione; se
xy
[l] < 0 si parla di
anticorrelazione (che esprime il fatto che mentre una variabile cresce, laltra
diminuisce e viceversa).
Poich`e n l con l > 0 implica ritardo, in
xy
[l] si appaia la sequenza x[n]
con la sequenza y[n] ritardata di n passi temporali; in
yx
[l] si fa esattamente
il contrario. Quindi, ad esempio, una cross-correlazione positiva tra x[n] e y[n]
a lag l > 0 signica che le variazioni di y[n] seguono quelle di x[n].
Dalle precedenti denizioni segue che

xy
[l] =
yx
[l]
e quindi le due cross-correlazioni danno la stessa informazione riguardo alla
somiglianza dei segnali x[n] e y[n].
Ricordando la denizione di convoluzione lineare vediamo che
xy
[l] `e la convo-
luzione lineare della prima sequenza per la seconda rovesciata temporalmente:

xy
[l] = x[l] y[l].
Se y[n] x[n] abbiamo lautocorrelazione:

xx
[l] =
+

n=
x[n]x[n l] =
+

n=
x[n +l]x[n] = x[l] x[l].
Tale grandezza in sostanza descrive come le variazioni di x[n] tendano a ripe-
tersi dopo un certo tempo di ritardo. Ad esempio, `e evidente che in ogni caso
un segnale sar`a perfettamente correlato con se stesso a lag zero; se un segnale
`e correlato con se stesso ad un certo lag diverso da zero, signica che esistono
6.1. CORRELAZIONE DI SEGNALI A TEMPO DISCRETO 193
nel segnale patterns che si ripetono. Si intuisce come questo possa essere mes-
so in relazione con la presenza nel segnale di componenti periodiche, ossia con
lanalisi di Fourier.
Tornando al caso generale di cross-correlazione di due segnali diversi, se x[n]
e y[n] sono causali e di ugual durata nita N si ha evidentemente

xy
[l] =
N|k|1

n=i
x[n]y[n l]
e

xx
[l] =
N|k|1

n=i
x[n]x[n l]
con
_
i = l e k = 0 per l 0,
i = 0 e k = l per l < 0.
La sequenza di correlazione ha le seguenti propriet` a:
1. lautocorrelazione a lag zero rappresenta lenergia del segnale, ossia

xx
[0] =
+

n=
{x[n]}
2
2. la cross correlazione non pu` o mai superare la radice quadrata del prodotto
delle energie, ossia

xy
[l]
_

xx
[0]
yy
[0]
3. lautocorrelazione `e massima a lag zero perch`e un segnale combacia per-
fettamente con se stesso a lag zero, ossia

xx
[l]
xx
[0].
4. lautocorrelazione `e una funzione pari del lag e quindi `e suciente calcolare

xx
[l] per lag l 0 per conoscere lintera sequenza di autocorrelazione,
ossia

xy
[l] =
yx
[l]
xx
[l] =
xx
[l].
Talvolta al posto di
xy
[l] e
xx
[l] si preferisce usare quantit`a normalizzate,
dette rispettivamente coeciente di cross-correlazione e coeciente di autocor-
relazione:

xy
[l] =

xy
[l]
_

xx
[0]
yy
[0]
|
xy
[l]| 1,

xx
[l] =

xx
[l]

xx
[0]
|
xx
[l]| 1.
194 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
Se le sequenze considerate sono periodiche con periodo N ed hanno quindi
energia innita ma potenza media nita, si denisce la cross-correlazione come

xy
[l] = lim
M
1
2M + 1
+M

n=M
x[n]y[n l]
ed in modo analago lautocorrelazione come

xx
[l] = lim
M
1
2M + 1
+M

n=M
x[n]x[n l].
Questi limiti coincidono con le medie su un singolo periodo dei cross-prodotti o
prodotti incrociati :

xy
[l] =
1
N
N1

n=0
x[n]y[n l],

xx
[l] =
1
N
N1

n=0
x[n]x[n l].
Tali sequenze sono a loro volta periodiche con periodo N.
Se un segnale x[n] con autocorrelazione nota
xx
[l] viene elaborato da un sistema
LTI con risposta allimpulso h[n], e se y[n] `e loutput, si ha

yx
[l] = y[l] x[l] = h[l] (x[l] x[l]) = h[l]
xx
[l],

xy
[l] = x[l] y[l] = (x[l] x[l]) h[l] =
xx
[l] h[l],

yy
[l] = y[l] y[l] = (h[l] (x[l]) (h[l] x[l]) =
= (h[l] (h[l]) (x[l] x[l]) =
hh
[l]
xx
[l],
dove
hh
[l] esiste se il sistema `e stabile ossia se h[n] `e assolutamente sommabile.
Dallultima relazione si evince che lenergia del segnale di output `e data da

yy
[0] =
+

k=

hh
[k]
xx
[k].
Queste formule si applicano sia a segnali di energia, sia a segnali di potenza.
6.2 Il teorema di Wiener - Khinchin
Dati due segnali di cui esista la DTFT,
x[n] X(e
j
), y[n] Y (e
j
),
6.3. ANALISI DI FOURIER TRAMITE DFT 195
si dimostra dalla propriet` a di convoluzione della DTFT che

xy
[l] X(e
j
)Y (e
j
) spettro di densit`a di cross-energia
e nel caso y[n] x[n] reale

xx
[l] X(e
j
)X(e
j
) = X(e
j
)X

(e
j
) =

X(e
j
)

2
spettro di densit`a di energia.
La quantit`a

X(e
j
)

2
, che descrive la distribuzione in frequenza dellenergia
del segnale, `e uguale alla DTFT della sequenza di autocorrelazione: questo `e
il contenuto del teorema di Wiener - Khinchin
2
. Si ricordi infatti che per la
relazione di Parseval per la DTFT,
E =
+

n=
|x[n]|
2
=
1
2
_
+

X(e
j
)

2
d.
Lo spettro di densit`a di energia, o semplicemente spettro di energia, `e il quadrato
dello spettro di ampiezza

X(e
j
)

introdotto in precedenza.
6.3 Analisi di Fourier tramite DFT
Abbiamo visto che la distribuzione in frequenza dellenergia E di un segnale che
ammette DTFT `e descritta da

X(e
j
)

2
, ossia dallo spettro di energia
3
.
Tuttavia, nelle applicazioni pratiche,
anche se il segnale considerato x[n] non ha intrinsecamente durata nita,
noi riusciamo a misurarne solo un segmento v[n] con n = 0, N 1;
anche se `e la DTFT del segnale originario che vorremmo conoscere per
una completa analisi spettrale (di Fourier), `e la DFT del segmento v[n]
che riusciamo a calcolare, ossia un numero nito di campioni frequenziali
della DTFT del segmento v[n] (campionamento spettrale).
Loperazione che a partire dal segnale originario x[n] innitamente persisten-
te conduce allestrazione del segmento di lunghezza nita `e descritta come
windowing o anche tapering.
Nellelaborazione numerica dei segnali, una window (nestra), detta anche
taper (dal verbo inglese to taper=assottigliare, ausolare, rastremare) `e una
2
Il nome del secondo autore del teorema, un matematico russo, `e talvolta scritto anche
Khintchine.
3
La stessa informazione riguardo alla composizione frequenziale del segnale `e, ovviamente,
oerta dal semplice modulo della DTFT, ossia dallo spettro di ampiezza.
196 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
sequenza identicamente nulla al di fuori di un dato intervallo di valori del tem-
po discreto. Ad esempio, una sequenza unitaria nellintervallo scelto e nulla al
di fuori `e detta nestra rettangolare (in altri contesti, anche porta rettan-
golare, termini che descrivono la forma della sua rappresentazione graca); il
termine taper `e invece riservato a forme di nestra che decrescono pi` u o meno
gradualmente verso lo zero ai bordi, come il nome suggerisce.
Quando una sequenza x[n] viene moltiplicata per una nestra, il prodotto `e zero
al di fuori dellintervallo in cui la nestra non ha campioni nulli: tutto ci`o che
rimane `e la parte di x[n] inquadrata nella nestra. E questa operazione che
chiamiamo, appunto, windowing.
Il concetto di nestra ha numerosissime applicazioni nellanalisi spettrale, nel
progetto di ltri (come gi` a accennato) ecc... Rimandiamo al fondo di questo
capitolo una breve rassegna delle nestre pi` u usate.
Per ora torniamo allanalisi di Fourier e proponiamoci di esaminare le conse-
guenze, che si hanno quando si studia la X(e
j
) di un segnale tramite la DFT
di un suo segmento; conseguenze dovute al windowing ed al campionamento
spettrale.
Questi argomenti vengono di solito discussi utilizzando segnali sinusoidali, anche
se le conclusioni hanno validit`a generale e forniscono linee-guida utili ogni volta
che si ha unidea dei contributi frequenziali contenuti nel segnale esaminato.
Bench`e per essi la DTFT esista solo in senso generalizzato, i segnali sinusoidali
costituiscono infatti un importante riferimento teorico per testare algoritmi e
metodi di analisi e studiare come essi funzionano nel dominio della frequenza.
Ricordiamo che la X(e
j
) di un segnale sinusoidale, ad esempio
x[n] = Acos (
0
n +)
con n (, +), `e una coppia di impulsi a
0
, che poi si ripete periodica-
mente con periodo 2.
In questo contesto
1. il windowing smussa ed allarga i picchi impulsivi della X(e
j
) teorica, cos`
che le frequenze di picco sono denite meno esattamente e risulta ridotta
labilit` a nel risolvere (distinguere) segnali sinusoidali di frequenze vicine;
2. il campionamento spettrale potenzialmente d`a una visione poco accurata
o addirittura ingannevole dell spettro vero del segnale sinusoidale.
Tutto questo pu` o essere compreso osservando che
in accordo con la propriet` a di convoluzione-prodotto della DTFT, il win-
dowing (che nel dominio del tempo `e una moltiplicazione) nel dominio
6.3. ANALISI DI FOURIER TRAMITE DFT 197
della frequenza corrisponde allosservare non X(e
j
) ma la convoluzione
continua periodica dello spettro vero con la DTFT della nestra:
V (e
j
) =
1
2
_
+

X(e
j
)W(e
j[]
)d;
lo spettro della nestra `e a sua volta, tipicamente (come vedremo), una
funzione di che nellintervallo fondamentale presenta un lobo princi-
pale centrato sullo zero ed un certo numero di lobi laterali pi` u o meno
accentuati;
la DFT di v[n], che `e
V [k] =
N1

n=0
v[n]e
j
2
N
kn
con k = 0, N 1, corrisponde al prendere N campioni equispaziati in
angolo di V (e
j
), ossia
V [k] = V (e
j
)|
=
2
N
k
.
Discutiamo ora separatamente gli eetti del windowing e del campionamento
spettrale con alcuni esempi.
6.3.1 Eetto del windowing
Consideriamo il segnale
x[n] = A
0
cos(
0
n +
0
) +A
1
cos(
1
n +
1
)
con < n < +, composto da due sinusoidi reali di diversa frequenza ed
ampiezza, e calcoliamo la DTFT di un suo segmento v[n], dato da
v[n] = A
0
w[n] cos(
0
n +
0
) +A
1
w[n] cos(
1
n +
1
)
dove w[n] `e una generica nestra di lunghezza N.
Allo scopo riscriviamo v[n] come sovrapposizione di esponenziali complessi:
v[n] =
A
0
2
w[n]e
+j
0
e
+j
0
n
+
A
0
2
w[n]e
j
0
e
j
0
n
+
+
A
1
2
w[n]e
+j
1
e
+j
1
n
+
A
1
2
w[n]e
j
1
e
j
1
n
.
Possiamo cos` scrivere immediatamente
V (e
j
) =
A
0
2
e
+j
0
W[e
+j(
0
)
] +
A
0
2
e
j
0
W[e
+j(+
0
)
] +
+
A
1
2
e
+j
1
W[e
+j(
1
)
] +
A
1
2
e
j
1
W[e
+j(+
1
)
]
198 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
dove W[e
+j(
0
)
] ha una massimo a = +
0
, W[e
+j(+
0
)
] ha una massimo
a =
0
ecc....
Il valore di ogni massimo `e pari a

N1
n=0
w[n]. Infatti
W(e
j
) =
+

n=
w[n]e
jn
comporta
W(e
j0
) =
+

n=
w[n] =
N1

n=0
w[n].
In particolare, per una nestra rettangolare
w[n] =
_
1 0 n N 1
0 altrove
si ha
N1

n=0
w[n] = N.
Vediamo cos` che V (e
j
) `e uguale a W(e
j
) replicata a
0
ed a
1
, con
ciascuna replica scalata per lampiezza (complessa) del corrispondente esponen-
ziale complesso contenuto nel segnale. Ad esempio, la replica di W(e
j
) che si
trova a +
0
`e scalata per lampiezza complessa
A
0
2
e
+j
0
.
Si noti che in V (e
j
) compaiono anche le fasi iniziali delle singole sinusoidi, ma
evidentemente se poi prendiamo il modulo di V (e
j
) (spettro di ampiezza) le
fasi iniziali scompaiono.
Come appare gracamente questo spettro?
Proponiamoci di fare degli esempi con la nestra pi` u semplice possibile, quel-
la rettangolare, e prima di procedere esaminiamo nei dettagli lo spettro della
nestra rettangolare di lunghezza generica N.
Esso vale
W(e
j
) =
N1

n=0
e
jn
=
1 e
jN
1 e
j
= e
j
N1
2
sin(N/2)
sin(/2)
.
La fase `e lineare; a parte il fattore di fase, si tratta di una funzione di Dirichlet.
Il suo modulo `e mostrato in Fig. 6.1 nel caso N = 8.
6.3. ANALISI DI FOURIER TRAMITE DFT 199
0 +
0
N N = 8
|
W
[
e
x
p
(
j

)
]
|
Figura 6.1: Modulo della trasformata DTFT della nestra rettangolare di
lunghezza N = 8
Lo spettro presenta, come avevamo anticipato, un lobo principale ed un certo
numero di lobi laterali pi` u piccoli, la cui entit`a decresce allontanandosi dal lobo
centrale. Gran parte del contenuto spettrale `e dunque concentrato attorno a
= 0.
Gli zeri si trovano a =
2
N
m con m = 1, 2, 3... e quindi il lobo centrale
va da
2
N
a +
2
N
; in altri termini, la sua larghezza alla base `e
4
N
= 1.57 rad.
Laltezza del lobo principale `e N, come gi` a sappiamo.
I lobi laterali sono
N
2
1 per parte e hanno il massimo a circa

N
(2m + 1). Il
pi` u alto `e il primo lobo laterale a anco di quello principale, che si trova a
3
N
ed ha unaltezza di circa
2N
3
. Pertanto il rapporto tra laltezza del primo lobo
laterale e quella del lobo principale `e circa
2
3
che equivale a circa 13.5 dB.
Nellesempio della Fig. 6.1, N = 8. Osserviamo ora come cambia la forma
variando N: in Fig. 6.2 `e illustrato il caso N = 64.
Si vede chiaramente leetto di un aumento di N: il lobo principale si stringe e
si alza, i lobi laterali si fanno pi` u piccoli e numerosi. Ora il lobo centrale `e largo
alla base
4
N
0.2 rad.
Ora torniamo alla forma dello spettro V (e
j
) e procediamo con gli esempi
realativi alluso di una nestra rettangolare.
200 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0 +
0
N
N = 64
|
W
[
e
x
p
(
j

)
]
|
Figura 6.2: Modulo della trasformata DTFT della nestra rettangolare di
lunghezza N = 64
Consideriamo alcuni segnali composti con sinusoidi di frequenze
0
ed
1
che
dieriscono di =
1

0
diverse (ossia picchi spettrali diversamente separa-
ti). Riduciamo progressivamente tenendo ssata la nestra e la sua durata.
Osserviamo lo spettro di ampiezza del segnale v[n] (modulo della DTFT) nei
vari casi.
1. Fig. 6.3:

0
=
2
6
,
1
=
2
3
=
2
3
2.09 rad 0.2 rad
A
0
= 1, A
1
= 0.75
A
0
A
1
=
3
4
In questo caso le due sinusoidi sono ben risolte. Le altezze dei picchi sono
rispettivamente 32 e 24 e quindi riproducono correttamente il rapporto
delle ampiezze delle due sinusoidi, ossia 3/4.
Si noti che il valore 32 deriva da
A
0
2
N con A
0
= 1 e N = 64, ecc...
2. Fig. 6.4:

0
=
2
14
,
1
=
4
15
0.389 rad > 0.2 rad
A
0
= 1, A
1
= 0.75
A
0
A
1
=
3
4
6.3. ANALISI DI FOURIER TRAMITE DFT 201
0

0
8
16
24
32
= 2.09 rad

|
V
[
e
x
p
(
j

)
]
|
Figura 6.3: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un molto superiore alla larghezza del lobo princi-
pale della trasformata della nestra rettangolare della stessa lunghezza. I due
picchi spettrali sono molto ben risolti. Le altezze dei picchi spettrali stanno
nello stesso rapporto delle ampiezze delle sinusoidi componenti il segnale
Anche in questo caso le due sinusoidi sono risolte. Le altezze dei pic-
chi sono approssimativamente 32 e 24 e quindi riproducono abbastanza
correttamente il rapporto delle ampiezze delle due sinusoidi, ossia 3/4.
3. Fig. 6.5:

0
=
2
14
,
1
=
2
12
0.075 rad < 0.2 rad
A
0
= 1, A
1
= 0.75
A
0
A
1
=
3
4
In questo caso le due sinusoidi non sono pi` u ben risolte, a causa dellal-
largamento degli originali picchi impulsivi. Inoltre i lobi laterali che si
sommano sfasati inuenzano laltezza dei picchi, per cui il rapporto delle
ampiezze non `e pi` u rispettato.
Tali fenomeni, che sono i principali eetti del windowing, sono descritti
parlando di
ridotta risoluzione,
leakage.
Il fenomeno del leakage `e cos` chiamato perch`e consiste nel fatto che la
componente a frequenza
0
si spande (leaks) nelle vicinanze di
1
e
viceversa. Esso `e dovuto soprattutto alla presenza ed importanza dei
202 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0

0
8
16
24
32
= 0.389 rad

|
V
[
e
x
p
(
j

)
]
|
Figura 6.4: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un maggiore della larghezza del lobo principale
della trasformata della nestra rettangolare della stessa lunghezza. I due picchi
spettrali sono risolti. Le altezze dei picchi spettrali stanno circa nello stesso
rapporto delle ampiezze delle sinusoidi componenti il segnale
lobi laterali, capaci di diondere la potenza che competerebbe ad una
data sinusoide anche a frequenze molto lontane da quella della sinusoide
stessa, ed `e responsabile dellalterazione dei corretti rapporti di ampiezza
dei picchi.
Nel contempo si ha ridotta risoluzione, ossia ridotta capacit`a di separare
(risolvere) sinusoidi vicine, a causa soprattutto della larghezza nita del
lobo principale.
4. Fig. 6.6:

0
=
2
14
,
1
=
4
25
0.054 rad 0.2 rad
A
0
= 1, A
1
= 0.75
A
0
A
1
=
3
4
In questultimo caso le due sinusoidi non sono pi` u risolte aatto a causa
del prevalere degli eetti del windowing.
Abbiamo detto che la capacit`a di risolvere picchi vicini `e dovuta soprattutto
alla larghezza nita del lobo principale.
6.3. ANALISI DI FOURIER TRAMITE DFT 203
0

0
8
16
24
32
= 0.075 rad

|
V
[
e
x
p
(
j

)
]
|
Figura 6.5: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un inferiore alla larghezza del lobo principale
della trasformata della nestra rettangolare della stessa lunghezza. I due picchi
spettrali non sono ben risolti, seppure ancora individuabili, ed i rapporti di
altezza dei picchi non riproducono pi` u correttamente il rapporto di ampiezze
delle sinusoidi
Pi` u in dettaglio, la possibilit`a di distinguere i due picchi `e eettivamente lega-
ta in primo luogo al fatto che essi siano separati pi` u della larghezza del lobo
principale della trasformata della nestra, W(e
j
), ma intervengono anche altri
fattori. A parit`a di separazione in frequenza, la risoluzione dipender`a
dal rapporto delle loro ampiezze (se unampiezza `e molto piccola, il cor-
rispondente picco - sia ad esempio
1
- pu` o essere sommerso dai lobi
laterali relativi allaltro picco
0
);
dal fatto che la replica di W(e
j
) centrata sullaltra frequenza
0
abbia
modulo sucientemente piccolo nei pressi di
1
.
Indicativamente si trova che per una suciente risoluzione `e richiesto che
20 log
10
A
1
A
0
> altezza relativa dei lobi laterali di |W(e
j
)| espressa in dB
dove con altezza relativa si indica laltezza divisa per quella del lobo principale.
Da quanto detto deduciamo che `e desiderabile
che il lobo principale di |W(e
j
)| sia stretto
204 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0

0
8
16
24
32
= 0.054 rad

|
V
[
e
x
p
(
j

)
]
|
Figura 6.6: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un molto inferiore alla larghezza del lobo principale
della trasformata della nestra rettangolare della stessa lunghezza. I due picchi
spettrali non sono risolti aatto
che i lobi laterali siano bassi e decrescano rapidamente allontanandosi dal
lobo principale.
I nostri esempi riguardavano luso di una nestra rettangolare di lunghezza s-
sata. Usando nestre che vanno a zero pi` u gradualmente ai bordi, a parit`a di
lunghezza si ottiene un abbassamento dei lobi laterali della trasformata della
nestra, ma questo avviene al costo di allargare il lobo centrale (cfr. sezione
6.4). In questo modo si ha meno leakage (che `e dovuto soprattutto alla presenza
ed importanza dei lobi laterali) ma si perde ulteriormente in risoluzione (fattore
legato soprattutto alla larghezza del lobo principale): la condizione sulla se-
parazione in frequenza sar`a pi` u dicilmente soddisfatta. Naturalmente questo
eetto sfavorevole sar`a compensabile se siamo in grado di aumentare N, perch`e
al crescere del numero di campioni la trasformata della nestra rettangolare di-
viene sempre pi` u simile alla funzione impulsiva del caso ideale, come mostrato
in Fig. 6.7.
6.3.2 Eetto del campionamento spettrale
Tale eetto `e, ancora una volta, ben illustrato da un esempio.
6.3. ANALISI DI FOURIER TRAMITE DFT 205
0 +
0
32
64
128
256 N = 32
0 +
0
32
64
128
256 N = 64
0 +
0
32
64
128
256 N = 128

|
W
[
e
x
p
(
j

)
]
|
0 +
0
32
64
128
256 N = 256
Figura 6.7: Modulo della trasformata DTFT di nestre rettangolari di varie
lunghezze N. Al crescere di N la forma diviene sempre pi` u simile a quella di
un impulso
Prendiamo di nuovo il segnale v[n] di N = 64 campioni, con

0
=
2
14
,
1
=
4
15
0.389 rad
A
0
= 1, A
1
= 0.75
A
0
A
1
=
3
4
e consideriamone la DTFT (Fig. 6.8, curva rossa) e la DFT calcolata su N = 64
punti (Fig. 6.8, stem plot in nero).
La risoluzione `e a priori suciente (nella DTFT i due picchi sono ben risolti)
ma poich`e i picchi della DTFT cadono fra un campione e laltro della DFT, se
osserviamo solo questultima non siamo in grado di valutare correttamente n`e
le frequenze delle sinusoidi contenute nel segnale, n`e le loro ampiezze.
In generale, i picchi veri non coincideranno mai esattamente con una delle
frequenze di campionamento e questo potenzialmente dar` a una visione distorta
della soggiacente DTFT del segnale.
206 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0

0
8
16
24
32
= 0.389 rad
|
V
[
e
x
p
(
j

)
]
|
Figura 6.8: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un superiore alla larghezza del lobo principale della
trasformata della nestra rettangolare della stessa lunghezza, cos` che la risolu-
zione `e suciente se si osserva la forma della DTFT (curva rossa). Per`o quando
si prendono N = 64 campioni della DTFT calcolando la DFT della sequenza
e si osservano soltanto quelli (stem plot in nero), il fatto che le frequenze delle
sinusoidi che compongono il segnale non coincidano con alcuna delle frequenze
di campionamento fa s` che il quadro risulti alterato. Le frequenze e le ampiezze
delle sinusoidi vengono stimate con scarsa accuratezza
Se mantenendo gli stessi parametri (N, A
0
, A
1
e ) facciamo s` che questa
coincidenza ci sia, la DFT del segnale ci appare molto diversa, come mostrato
in Fig. 6.9.
In questo esempio,

0
=
2
16
= 4
2
64
,
1
=
2
8
= 8
2
64
0.389 rad
cos` che nella DFT su N = 64 punti,
0
coincide con il quinto campione
frequenziale (k = 4) e
1
coincide con il nono campione frequenziale (k = 8).
La DFT ora appare molto pulita e priva di contenuto spettrale a frequenze
angolari diverse da
0
e
1
, ma questa `e in gran parte una illusione dovuta al
povero campionamento spettrale.
In realt`a c`e contenuto spettrale signicativo a tutte le frequenze, come si verica
facilmente inttendo il campionamento in frequenza mediante un padding di zeri
no a lunghezza di 128 punti (Fig. 6.10).
6.3. ANALISI DI FOURIER TRAMITE DFT 207
0

0
8
16
24
32
= 0.389 rad
|
V
[
e
x
p
(
j

)
]
|
Figura 6.9: Spettro di ampiezza di un segnale di N = 64 campioni, contenen-
te due sinusoidi separate di un superiore alla larghezza del lobo principale
della trasformata della nestra rettangolare della stessa lunghezza, cos` che la
risoluzione `e suciente. La DTFT del segnale `e rappresentata dalla curva ros-
sa. Lo stem plot in nero rappresenta invece la DFT calcolata su N = 64 punti:
un campionamento spettrale piuttosto povero. Ci` o nonostante, siccome le fre-
quenze delle sinusoidi componenti il segnale sono state scelte in modo tale da
cadere esattamente a due delle frequenze di campionamento, la DFT appare (il-
lusoriamente) riprodurre benissimo la forma di uno spettro piatto con due righe
spettrali. Non appare alcun contenuto spettrale a frequenze diverse da quelle
delle sinusoidi presenti nei dati ed i campioni spettrali non nulli a tali frequenze
danno il valore esatto che corrisponde alle ampiezze delle sinusoidi
Sottolineiamo ancora una volta che cos` facendo non si migliora la risoluzione,
che dipende solo dalla forma e dalla lunghezza della nestra, ma si vedono
semplicemente pi` u dettagli della soggiacente DTFT del segnale, entro i limiti
della risoluzione di cui si dispone.
Il padding di zeri ed il conseguente oversampling dello spettro sono quasi sempre
usati, per avere graci pi` u leggibili: linterpolazione in frequenza d`a una curva
continua e liscia, sulla quale i picchi vengono localizzati meglio come posizione
ed altezza.
208 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0

0
8
16
24
32
= 0.389 rad
|
V
[
e
x
p
(
j

)
]
|
Figura 6.10: Spettro di ampiezza di un segnale di N = 64 campioni, contenente
due sinusoidi separate di un superiore alla larghezza del lobo principale della
trasformata della nestra rettangolare della stessa lunghezza, cos` che la risolu-
zione `e suciente. La DTFT del segnale `e rappresentata dalla curva rossa. Lo
stem plot in nero rappresenta invece la DFT calcolata su N = 128 punti (tra-
mite padding di zeri): essa rivela correttamente il contenuto spettrale presente
nella DTFT a tutte le frequenze
6.4 Le nestre classiche e le loro caratteristiche
Abbiamo prima accennato agli eetti delluso di nestre pi` u graduali di quel-
la rettangolare. Concludiamo questo capitolo illustrando pi` u in dettaglio le
caratteristiche di tali nestre.
Le nestre pi` u note, oltre a quella rettangolare, sono quella di Bartlett (che coin-
cide sostanzialmente con la cosiddetta nestra triangolare), quella di Von Hann o
hanning, quella di Hamming e quella di Blackman. Le grandezze caratterizzanti
ogni nestra sono sempre
la larghezza del lobo principale, espressa, in riferimento al caso di nestra
rettangolare, come
4
N
dove il valore di dipende dalla nestra;
laltezza del pi` u alto lobo secondario rispetto a quello principale.
Queste nestre storiche o classiche sono state introdotte escogitando modi
empirici per ridurre laltezza relativa dei lobi laterali rispetto al caso di nestra
rettangolare.
6.4. LE FINESTRE CLASSICHE E LE LORO CARATTERISTICHE 209
Le loro caratteristiche si discutono pi` u agevolmente osservando la forma del-
la trasformata in scala logaritmica (in dB), cosa che permette di visualizzare
landamento dei parametri caratteristici al variare della nestra (Fig. 6.11).
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
Rettangolare
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
Rettangolare, lungh. doppia
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
Bartlett
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
Hann
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
/
Hamming
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
/
Blackman
Figura 6.11: Andamento della trasformata in scala logaritmica (dB) per va-
rie nestre classiche. Tutti i pannelli mostrano la quantit`a 10 log
10
|W(e
j
)|
2
=
20 log
10
|W(e
j
)|. Per agevolare il confronto tra le nestre, tale quantit`a per tut-
te `e stata normalizzata ad avere valore zero a frequenza zero. Questo signica
che il modulo della trasformata `e ivi normalizzato a 1; ci`o corrisponde a norma-
lizzare i campioni di una data nestra a somma unitaria (anzich`e normalizzare i
campioni a valore massimo unitario, come normalmente si fa). Tutte le nestre
qui rappresentate hanno lunghezza di 51 campioni, meno quella rettangolare del
pannello in alto a destra, che ha lunghezza doppia ossia 101
Finestra rettangolare
La sua trasformata, gi` a vista in scala lineare, `e rappresentata in scala di
dB in Fig. 6.11, primi due pannelli in alto. Si vede che il lobo principale
`e il pi` u stretto di tutte le nestre a parit`a di lunghezza (pannello in alto
a sinistra). Il lobo secondario pi` u alto (prossimo a quello centrale) per` o
210 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
`e soltanto 13.5 dB sotto il lobo principale e la decrescita dei lobi laterali
allontanandosi dal lobo principale `e lenta. Raddoppiando la lunghezza
della nestra (Fig. 6.11, pannello in alto a destra in confronto con quello
accanto in alto a sinistra) il lobo principale si stringe ulteriormente ed il
numero di lobi laterali aumenta ma lattenuazione minima di 13.5 dB e la
decrescita lenta restano.
Finestra di Bartlett
La sua trasformata `e il quadrato (sempre non negativo, dunque) di quella
della nestra rettangolare, ed infatti la nestra di Bartlett `e il risultato
della convoluzione di due nestre rettangolari.
Ci` o comporta una riduzione del livello relativo dei lobi laterali a circa -27
dB (il doppio di -13.5 dB), come visibile ancora in Fig. 6.11. Nel contempo
per` o il lobo principale si allarga a
8
N
, cio`e si ha = 2. La decrescita dei
lobi laterali resta piuttosto lenta.
Si noti che questa nestra, in contesti diversi, pu` o includere o no zeri
agli estremi. E invalso luso di chiamare nestra di Bartlett quella che
include zeri agli estremi e nestra triangolare quella che non li include.
Finestra di Von Hann o hanning
La sua trasformata `e la somma di tre funzioni di Dirichlet traslate in
frequenza, cos` da avere una parziale cancellazione dei lobi laterali. La
funzione centrale ha peso 1/2 e quelle laterali 1/4 ciascuna.
Si ha una discesa dei lobi laterali a -32 dB rispetto al lobo principale,
mentre la larghezza del lobo principale resta a
8
N
( = 2). La decrescita
dei lobi laterali `e rapida.
Finestra di Hamming
Qui vengono sovrapposte tre funzioni di Dirichlet con pesi diversi, deter-
minati per tentativi cos` da minimizzare laltezza del pi` u pronunciato lobo
laterale. Si adottano cos` i pesi 0.54 per la funzione centrale e 0.23 per
quelle laterali.
Si ottiene una discesa dei lobi laterali al livello relativo di circa -43 dB
mentre la larghezza del lobo principale resta a
8
N
( = 2). In questo caso
il lobo laterale pi` u alto non `e il pi` u centrale. Lattenuazione `e notevole
ma la decrescita dei lobi laterali `e lenta.
Finestra di Blackman
Questa nestra usa cinque funzioni di Dirichlet variamente pesate in modo
da ridurre ulteriormente laltezza dei lobi laterali (ma non `e ottimizzata
in questo senso).
Si ottiene una discesa dei lobi laterali al livello relativo di circa -57 dB ma
la larghezza del lobo principale aumenta a
12
N
( = 3). Si ha moltissima
attenuazione e la decrescita dei lobi laterali `e abbastanza rapida ma il lobo
centrale `e pi` u largo che in tutte le altre nestre.
La Tabella 6.1 riporta la forma funzionale delle nestre che abbiamo citato.
Poich`e nei vari contesti in cui tali nestre trovano applicazione `e a volte richiesta
6.4. LE FINESTRE CLASSICHE E LE LORO CARATTERISTICHE 211
la forma causale della nestra stessa, altre volte la forma non causale simmetrica
attorno allorigine, nella Tabella sono riportate entrambe le forme. In tutti i
casi, lunico parametro libero `e la lunghezza.
Per una nestra in forma non causale, la lunghezza N `e sempre dispari. Per
una forma causale N pu` o essere sia pari sia dispari, ma se `e pari ovviamente
il massimo cade ad un valore semi-intero dellindice. Le forme causali date in
tabella si intendono per N dispari. Le nestre sono normalizzate in modo da
avere 1 come valore massimo.
La Fig. 6.12 mostra la forma delle stesse nestre.
Si noti che i graci sono tracciati come se si trattasse di funzioni continue di
n, per chiarezza visiva, ma naturalmente si tratta di sequenze denite solo per
valori interi di n.
Si noti inoltre che tutte hanno zeri agli estremi, tranne la nestra di Hamming.
Le nestre sono normalizzate in modo da avere 1 come valore massimo.
0 (N 1)/2 N
0
1
n
w
[
n
]
Figura 6.12: Andamento temporale delle pi` u note nestre graduali classiche,
nella loro forma causale. Finestra rettangolare: rosso; nestra di Bartlett: verde;
nestra hanning: blu; nestra di Hamming: magenta; nestra di Blackman:
nero
Le nestre classiche ausolate sono spesso usate, al posto della nestra ret-
tangolare, per lanalisi spettrale (non solo di segnali deterministici ma anche di
segnali casuali, la cui analisi spettrale si svolge con metodi trattati nella Parte
III).
Da quanto abbiamo detto del comportamento delle nestre classiche nel dominio
della frequenza, in questa sezione, e degli eetti del windowing, nella sezione
precedente, si comprende che non esiste la nestra migliore in assoluto per
lanalisi spettrale e la scelta della nestra `e il risultato di un compromesso: se `e
importante la risoluzione e si vuole quindi che la larghezza del lobo principale
della trasformata della nestra sia minima a parit`a di lunghezza si user` a la
2
1
2
C
A
P
I
T
O
L
O
6
.
S
E
G
N
A
L
I
D
E
T
E
R
M
I
N
I
S
T
I
C
I
:
S
P
E
T
T
R
O
D
I
E
N
E
R
G
I
A
Finestra Forma non causale Forma causale
M n M 0 n N 1
Bartlett 1 |n|/M 2n/(N 1) per 0 n (N 1)/2
2 2n/(N 1) per (N 1)/2 n N 1
Hann
1
2
_
1 + cos
_
n
M
_
1
2
_
1 cos
_
2n
N1
__
Hamming 0.54 + 0.46 cos
_
n
M
_
0.54 0.46 cos
_
2n
N1
_
Blackman 0.42 + 0.5 cos
_
n
M
_
+ 0.08 cos
_
2n
M
_
0.42 0.5 cos
_
2n
N1
_
+ 0.08 cos
_
4n
N1
_
Tabella 6.1: Forma funzionale delle pi` u note nestre graduali classiche, nella loro forma causale e non causale
6.5. LA FINESTRA DI KAISER 213
nestra rettangolare; se `e importante minimizzare il leakage e si vuole quindi
che i lobi laterali siano molto attenuati e rapidamente decrescenti allontanandosi
dal lobo principale, allora le nestre di Von Hann, Hamming e Blackman saranno
le pi` u interessanti.
6.5 La nestra di Kaiser
Oltre alle classiche nestre citate prima, ne esistono molte altre. Ad esempio,
Kaiser ha proposto unaltra nestra pi` u moderna e essibile, basata su crite-
ri di ottimalit`a (mira al meglio sotto un certo punto di vista, nel rispetto di
certi vincoli). In particolare, la nestra di Kaiser minimizza la larghezza del
lobo principale sotto la condizione di tenere ssa la lunghezza della nestra e di
non far superare allenergia nei lobi laterali una certa percentuale dellenergia
totale dello spettro. Lenergia nei lobi laterali `e denita calcolando lintegra-
le del modulo quadro della trasformata della nestra su (0, ), con esclusione
dellintervallo di frequenze che compete al lobo principale.
I valori che si ottengono per i campioni di w[n] dipendono, oltre che (ovviamente)
dalla lunghezza della nestra, dallenergia concessa ai lobi laterali.
La soluzione del problema di ottimizzazione di Kaiser `e esprimibile mediate la
funzione di Bessel modicata di ordine zero, data dalla serie
I
0
(x) =

k=0
_
x
k
2
k
k!
_
.
La nestra di Kaiser di lunghezza N `e data infatti dallespressione
w[n] =
I
0
_

_
1 (|2n N + 1|/N 1)
2
_
I
0
()
dove il parametro , che questa nestra ha in pi` u rispetto alle nestre classiche,
serve per regolare la larghezza del lobo principale e laltezza dei lobi laterali: al
crescere di il lobo principale si allarga ed i lobi laterali si abbassano, a parit`a
di lunghezza. Il caso = 0 riporta alla nestra rettangolare.
Invece far crescere la lunghezza tenendo costante fa decrescere la larghezza
del lobo principale ma non inuenza laltezza massima dei lobi laterali.
La nestra di Kaiser `e particolarmente addatta per il progetto di ltri con uso
di nestre. Infatti mediante simulazioni numeriche condotte su un intervallo di
condizioni molto ampio, Kaiser ha trovato delle formule empiriche che permetto-
no di determinare a priori con discreta approssimazione quale forma e lunghezza
della nestra siano richieste, per restare entro certe speciche pressate per il
ltro da progettarsi con la tecnica con nestre. Con le nestre classiche invece
214 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
si deve andare per tentativi, rendendo il lavoro pi` u lungo. Naturalmente luso
della nestra di Kaiser non sposta i limiti intrinseci del progetto con nestre,
cui abbiamo in precedenza accennato.
La Fig. 6.13 mostra la forma della nestra di Kaiser al variare del parametro .
0 (N 1)/2 N
0
1
n
w
[
n
]


0
1.5
2.5
4
5
7
Figura 6.13: Andamento temporale della nestra di Kaiser, per vari valori del
parametro
Si nota, al crescere di , laccentuazione del tapering, ossia della velocit` a di
discesa della nestra verso lo zero agli estremi.
La Fig. 6.14 mostra il modulo quadro della trasformata della nestra di Kaiser
in dB, al variare del parametro .
Si trova che la larghezza del lobo principale in rapporto a quella del caso
rettangolare cresce circa linearmente con , come mostrato in Fig. 6.15.
Anche il livello relativo dei lobi laterali in dB varia circa linearmente con ,
come si vede in Fig. 6.16.
6.5. LA FINESTRA DI KAISER 215
0 0.2 0.4 0.6 0.8 1
120
100
80
60
40
20
0
/
2
0
l
o
g
1
0
|
W
[
e
x
p
(
j

)
]
|


0
1.5
2.5
4
5
7
Figura 6.14: Andamento della trasformata in scala logaritmica (dB) della -
nestra di Kaiser per vari valori del parametro . Anche in questo caso si `e
normalizzato in tutti i casi il modulo della trasformata a 1 nellorigine delle
frequenze. Tutte le nestre qui rappresentate hanno lunghezza di 51 campioni
0 2 4 6 8 10
0
0.5
1
1.5
2
2.5
3
3.5

/
(
4

)
Figura 6.15: Andamento della larghezza del lobo principale della nestra
di Kaiser, in funzione del parametro . In ordinate `e riportato precisamente
N/4 ossia il rapporto tra e lanaloga quantit`a che caratterizza la nestra
rettangolare, 4/N
216 CAPITOLO 6. SEGNALI DETERMINISTICI: SPETTRO DI ENERGIA
0 2 4 6 8 10
80
70
60
50
40
30
20
10
0

L
i
v
e
l
l
o

r
e
l
a
t
i
v
o

l
o
b
i

l
a
t
.

(
d
B
)
Figura 6.16: Andamento del rapporto tra laltezza in dB del pi` u alto lobo laterale
e laltezza in dB del lobo principale, per nestre di Kaiser con vari valori del
parametro
Capitolo 7
Lapproccio statistico
allanalisi dei segnali
217
Parte IV
Analisi spettrale evolutiva
218
Capitolo 8
La Short Time Fourier
Transform (STFT)
219
Capitolo 9
La Trasformata Continua di
Wavelet (CWT)
220

Potrebbero piacerti anche