filtri multirate e banchi di filtri studio ed applicazioni

43
Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Upload: chiara-mariani

Post on 01-May-2015

240 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Filtri Multirate e Banchi di FiltriFiltri Multirate e Banchi di Filtri

Studio ed applicazioni

Page 2: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Banchi di filtriBanchi di filtri

Sono sistemi che scompongono il segnale in varie “bande di frequenza”

Vengono Impiegati in molteplici settori Analisi dei segnali Compressione e Codifica di segnali ed immagini Crittografia Sistemi di antenna Speech processing Ecc.

Page 3: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Filtri MultirateFiltri Multirate

Sono sistemi che operano a diverse frequenze di campionamento Possono essere impiegati per modificare T

(Es. Scalaggi di immagini, conversione di dati digitali tra diversi supporti CD, MC, … )

Si possono impiegate per realizzare sistemi digitali piu’ semplici da un punto di vista realizzativo

Sorgono nuove problematiche Aliasing Imaging

Page 4: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Blocchi FondamentaliBlocchi Fondamentali

Decimatore

Interpolatore

M

)(nx ) ( )( nMxnyD

L

)(nx

altrove 0

intero) :(p pLn )()( L

n

I

xny

Page 5: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Blocchi Fondamentali (esempio)Blocchi Fondamentali (esempio)

Decimatore

Interpolatore

2

2

[ …1 2 3 4 5 6 7 …] [… 1 3 5 7…]

[… 1 2 3 4 5 6 7… ] [ …1 0 2 0 3 0 4 0 5 0 6 0 7… ]

Page 6: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

ConsiderazioniConsiderazioni

Il decimatore e l’interpolatore Sono sistemi lineari NON SONO tempo invarianti

)()(ˆ

)())(()(

)()(ˆ)(ˆ)(ˆ

)()(ˆ

)()()(

0

o

ooo

o

nnyny

MnMnxnnMxnny

nMnxMnxnynx

nnxnx

Mnxnynx

Dim:

Page 7: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

ConsiderazioniConsiderazioni

Il decimatore e l’interpolatore Sono sistemi lineari NON SONO tempo invarianti Pertanto perdono di significato alcuni strumenti quali:

risposta impulsiva risposta in frequenza

Es:

2

[1 2 3 4 5 6 7] [1 3 5 7]

[0 1 2 3 4 5 6 7] [0 2 4 6]

Page 8: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Effetti sullo spettro (Interpolatore)Effetti sullo spettro (Interpolatore)

Interpolatore:

)(

:ove )(

L di multiplo n a limitata

)()(

L

m

mL

n

n

n

n

zX

Lnmzmx

zLnx

znyzY

)()( Ljj eXeY In particolare:

Page 9: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Effetti sullo spettroEffetti sullo spettro

Interpolatore:

)()( Ljj eXeY

E

Effetto Imaging

X(e ) Y(e )j j

2

Page 10: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Effetti sullo spettro (Decimatore)Effetti sullo spettro (Decimatore)

Decimatore

)(1

)'(1

zz' ponendo )(1

1)(

mnM :ponendo )()()(

1

M1

1

0

1

0

1

0

1

0

kM

k

M

k

kkm

m

M

k

M

k

km

m

n

n

n

n

WzXM

zXM

WWzmxM

zWM

mx

znMxznyzY

M

Mm

Mm

)(1

)(k 2

Mj

k

j eXM

eY

In particolare:

Page 11: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Effetti sullo spettro (Decimatore)Effetti sullo spettro (Decimatore)

Decimatore

)(1

)(k 2

Mj

k

j eXM

eY

2

Possibile effetto Aliasing !!!

Page 12: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

InterconnessioneInterconnessione

Il segnale originale si puo’ recuperare Con un opportuno filtro anti-imaging Purche’ non vi sia stato aliasing

Il segnale originale deve avere banda limitata entro NON e’ necessario che la banda sia centrata attorno allo 0 !!!

M M

1

0

)(1

)(M

k

kzWXM

zY

Maa 2

Page 13: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

InterconnessioneInterconnessione

In generale i due blocchi non sono intercambiabili Es: decimare ed interpolare non e’ lo stesso che interpolare e

decimare

I blocchi sono invece intercambiabili se M ed L sono “primi fra loro”

M L

Page 14: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

InterconnessioneInterconnessione

)(1

)(1

02

kLM

k

WzXM

zY ML

M L

)(1

)(1

01

kM

k

WzXM

zY ML

L M

Page 15: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

InterconnessioneInterconnessione

kLk WW Pertanto i risultati sono uguali se e solo se gli insiemi dei valori realizzati da:

coincidono !!!

M

kLjW kL 2

exp

Perche’ WkL copra tutti i punti sul cerchio unitario coperti da Wk, L ed M devono essere primi fra loro

Page 16: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

FiltriFiltri

Per modificare il periodo di campionamento Il decimatore è preceduto da un filtro anti-aliasing

L’interpolatore è seguito da un filtro anti-imaging

Mc

Lc

LP filter M

L LP filter

Page 17: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Variazione di un fattore razionaleVariazione di un fattore razionale

LP filter M L

Il filtro serve da anti-imaging ed anti-aliasing La freq. di taglio va dimensionata sul max(L,M) Problema:

Il filtro lavora ad alta frequenza Si possono usare strutture polifase (vedi dopo!)

Page 18: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Realizzazioni in più stadiRealizzazioni in più stadi

Se le specifiche sono troppo stringenti si può operare in due fasi: Esempio:

decimatore per 100 ed un filtro anti-aliasing con specifiche:

p= (nessun aliasing) s=si salvi l’80% della banda utile)

Caso 1:

p=

s=

LP

LP filter 100

Le specifiche del filtro sono molto stringenti

Page 19: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Realizzazioni in più stadiRealizzazioni in più stadi

Caso 2:

LP 1 50 LP 2 2

2=s=

LP 1 p=

1=

p=

s=

LP 2

Si accetta aliasing in LP1 che poi verrà eliminato da LP2Il primo decimatore (50) allarga lo spettro rilassando le specifiche di LP2Entrambi I filtri presentano specifiche meno stringenti

Page 20: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Equivalenze fondamentali (1)Equivalenze fondamentali (1)

G(z)M

MG(zM)

x(n) w(n) y(n)

kMM

k

MkkM

k

kM

k

kM

k

Wzz'zGzXM

WzGWzXM

zGWzXM

zGzWzY

WzXM

zW

M

MM

M

M

1

11

1

1

ove )'()'(1

))(()(1

)()(1

)()()(

)(1

)(

1

0

1

0

1

0

1

0

Page 21: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Equivalenze fondamentali (2)Equivalenze fondamentali (2)

G(zL)L

LG(z)x(n) w(n) y(n)

)()()()(

)()()(LLL zXzGzWzY

zXzGzW

Page 22: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Banchi di Filtri (analisi e sintesi)Banchi di Filtri (analisi e sintesi)

x(n)H0(z)

H1(z)

HM-1(z)

x0(n)

x1(n)

xM-1(n)

F0(z)

F1(z)

FM-1(z)

+y0(n)

y1(n)

yM-1(n)

y(n)

banco di analisi banco di sintesi

……

H0 H1 H2 HM-1 H0

20

Page 23: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Banchi di Filtri (analisi e sintesi)Banchi di Filtri (analisi e sintesi)

Banco di analisi suddivide il segnale in M sotto bande

Banco di sintesi elabora M segnali (tipicamente da un banco di analisi) ricombina i risultati in un segnale finale y(n)

I filtri possono essere progettati secondo diverse tipologie (Nyquist, complementari, DFT,…)

Questo schema trova impiego in molti campi Analisi dei segnali Codifica / compressione, multiplexing, .. Crittografia …

Page 24: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Uniform DFT filter banksUniform DFT filter banks

Tutti i filtri derivano da un “prototipo”

Ovvero

Ossia sono versioni traslate dello stesso spettro

10 ove )()( 0 MkzWHzH kk

)()(2

0

M

kj

jk eHeH

H0 H1 H2 HM-1 H0

20

Page 25: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

ApplicazioniApplicazioni

Transmultiplexers Multiplazione di segnali in tempo o in frequenza

Segnali audio digitali HI-FI Per ottenere una banda utile di 22k si deve

campionare almeno a 44k Questo richiede un filtro analogico anti-aliasing con

caratteristiche stringenti (elittici a fase non lineare) Campionando ad una frequenza superiore (88k) si

puo’ usare un filtro analogico meno stringente, si aggiunga quindi un filtro digitale ed un decimatore

88kHz sampler

A/DConverter H(z) 2

Page 26: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

ApplicazioniApplicazioni

Subband Coding Spesso i segnali presentano l’energia concentrata in certe sotto-

bande (Es. speech, immagini, …) Se l’energia è limitata ad una sotto-banda si può usare ad esempio

un filtro ed un decimatore Se l’energia occupa tutta la banda utile ma in modo diverso si può

usare un banco di analisi, una opportuna codifica ed un banco di sintesi.

Note: Conoscenza a priori della tipologia di segnali Fondamentale l’eliminazione di Aliasing-Imaging

H0(z) 2 2 F0(z)

H1(z) 2 2 F1(z)

+

Page 27: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

ApplicazioniApplicazioni

Crittografia di un segnale vocale su linea telefonica analogica suddivisione di un segnale in n sottobande ogni sottobanda viene quindi suddivisa in m segmenti

temporali permutazione dei segnali ( nm! ) ricombinazione

Page 28: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Si riuniscano i coefficienti h(n) di un filtro in piu’ gruppi (Ad es. pari e dispari)

)()()(

)12()(

)2()(

)12()2()()(

21

120

1

0

122

zEzzEzH

znhzE

znhzE

znhznhznhzH

n

n

n

n

n

n

n

n

n

n

Es: [… 1 2 3 4 5 6 7 8 9 8 7 6 5 4 …]=

[… 1 0 3 0 5 0 7 0 9 0 7 0 5 0 …]+[… 0 2 0 4 0 6 0 8 0 8 0 6 0 4 …]

E0 : filtro composto dai soli coeff. pari

E1 : filtro composto dai soli coeff. dispari

Page 29: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Filtri IIR analogamente si può operare anche su filtri IIR

221220

22

1

2222

1

1

1)(

1

1)(

11

1

1

1

1

1)(

za

azE

zazE

za

az

zaza

az

azzHEs:

Page 30: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Più genericamente (I Tipo):

Essendo e0(n) la versione decimata di h(n) vale la seguente proprietà

10 con )()(

ove

)()(1

0

MkknMhne

zEzzH

k

Mk

kM

k

)(1

)(1

00

kM

k

M zWHM

zE

Page 31: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Schema (I Tipo):

E0(zM)

z-1

z-1

E1(zM)

EM-1(zM) +

+

Page 32: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Esiste anche una versione alternativa (II tipo)

che è solo un modo diverso per numerare gli insiemi dei coefficienti del filtro h(n) (si spostano i ritardi a valle)

Nota: la decomposizione polifase si può applicare a qualunque sequenza.

)()(

ove

)()(

1

)1(1

0

zEzR

zRzzH

KMk

Mk

kMM

k

Page 33: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Decomposizione PolifaseDecomposizione Polifase

Schema (II Tipo):

R0(zM)

z-1

z-1

R1(zM)

RM-1(zM) +

+

Notare i ritardi messi a valle dei filtri

Page 34: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Finora nei decimatori e negli interpolatori il fitro operava nella parte ad alta frequenza

Inoltre il filtro compie molte operazioni inutili campioni nulli all’ingresso dell’interpolatore campioni eliminati in uscita dal decimatore

h0 h1 h2 hn-1

z-1 z-1 z-1

+ + + 2

Il sistema deve eseguire N Moltiplicazioni ed N-1 somme ogni qualvolta esce un capione pari e potrebbe venir spento durante i campioni dispari

x(n)

y(n) y(2n)

Page 35: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Implementazione polifase del decimatore:

E0(z2)

E1(z2)

z-1

+ 2y(n) y(2n)

x(n)

E0(z)

E1(z)

z-1

+

2

2

x(n)

y(2n)

•I filtri ricevono i campioni in ingresso con una cadenza dimezzata•La prima parte può essere vista come un de-multiplexer

Page 36: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Implementazione polifase dell’interpolatore:

R0(z2)

R1(z2)

z-1

+

2x(n)

R0(z)

R1(z)

z-1

+

2

2

x(n)

•I filtri ricevono i campioni in ingresso con una cadenza dimezzata•La seconda parte può essere vista come un multiplexer

Page 37: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Implementazione polifase dell’interpolatore per un numero razionale:

Lo schema canonico è doppiamente inefficiente il filtro opera nella parte ad alta frequenza, ovvero:

L’ingresso del filtro contiene L-1 zeri All’uscita viene salvato solo un risultato ogni M

LP filter M L

Page 38: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Esempio L=2, M=3;

R0(z)

R1(z)

z-1

+

2

2

x(n)

3 y(n)

y(n)

E0(z)

E1(z)

z-1

+

3

3

x(n)

E2(z) +3

z-1

2I Tipo

II Tipo

Page 39: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Notando che:321 zzz

R0(z)

R1(z)

z-1

+

2

2

x(n)

3 y(n)

R0(z)

R1(z)

z-3

+

2

2

x(n)

3 y(n)

z2

Page 40: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

R0(z)

R1(z)

z-3

+

2

2

x(n)

3 y(n)

z2

R0(z)

R1(z)

z-1

+

2

2

x(n) 3

y(n)

z-1

3

Per le “equivalenze fondamentali”:

Page 41: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

R0(z)

R1(z)

z-1

+

2

2

x(n) 3

y(n)

z-1

3

Essendo M ed L primi tra loro:

R0(z)

R1(z)

z-1

+

3

3

x(n) 2

y(n)

z-1

2

Page 42: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

z-1

+

x(n)

2

y(n)

z-1

2

R00(z)

R01(z)

z-1

+

3

3

R02(z) +3

z-1

R10(z)

R11(z)

z-1

+

3

3

R12(z) +3

z-1

Page 43: Filtri Multirate e Banchi di Filtri Studio ed applicazioni

Sistemi polifase per modificare TSistemi polifase per modificare T

Un esempio pratico: Siano [a b c d e f e d c b a ] i coefficienti del filtro LP:

E0=[a d e b] E1=[b e d a] E2=[c f c] R0=[b d f d b] R1=[a c e e c a] R00=[b d] R01=[d b] R02=[f] R10=[a e] R11=[c c] R12=[e a]