Sei sulla pagina 1di 37

Sistemi a campionamento variabile

Sottocampionatore di fattore M (decimatore)

Figura 1: Sottocampionatore

yD (n) = x(M n)
Figura 2: Sequenza sottocampionata di passo 2
Sovracampionatore di fattore L (espansore) (interpolatore soltanto se a valle è
presente un filtro LP)

Figura 3: Sovracampionatore

8
< x( n ) se n è multiplo di L
L
yE (n) =
: 0 altrimenti
Figura 4: Sequenza sovracampionata di passo 2
Esempio 1. Audio digitale

+ Energia significativa del segnale analizzato per f < fM

+ Prima del campionamento a 2fM , il segnale viene filtrato alla frequenza fM per evitar
aliasing

+ La banda di transizione del filtro deve essere molto piccola. Questo comporta difficoltà
di realizzazione e possibile distorsione di fase

Figura 5: Conversione analogico-digitale


Figura 6: Rappresentazioni in frequenza

Conviene allora applicare un metodo alternativo:


Figura 7: Conversione analogico-digitale alternativa

Figura 8: Rappresentazione in frequenza


Figura 9: Rappresentazione in frequenza
Esempio 2. Scomposizione del segnale in sottobande con banchi di filtri QMF (Quadrature
Mirror Filters)

+ Per ridurre la frequenza di campionamento di una sequenza x(n) conviene analizzare i


segnale in sottobande, individuando concentrazioni di energia in alcune zone dello
spettro

+ È possibile ridurre il numero medio dei bit per campione pur mantenendo costante il
numero medio di campioni nell’unità di tempo

Figura 10: Banco di analisi


Figura 11: Banco di filtri uniforme

Figura 12: Banco di filtri non uniforme

Consideriamo il caso con M = 2:


Figura 13: Analisi, quantizzazione e sintesi nel caso M=2

F0 ed F1 sono i filtri di sintesi


Figura 14: Quadrature Mirror Filters

H0 ed H1 sono filtri a mezza banda (maggiori dettagli in seguito)

Le sequenze v0 (n) e v1 (n) sono quantizzate rispettivamente da Q0 e da Q1 con b0 e b1


bit b0 +b1 bit
campione
. Abbiamo a disposizione 2
= b campione , con b0 e b1 che dipendono della
distribuzione energetica di X(ω).
Analisi in frequenza di sottocampionatori e sovracampionatori
Espansore Per quanto riguarda i sovracampionatori non si ha perdita di informazione.

Figura 15: Sovracampionatore

8
< x( n ) se n multiplo di L
L
yE (n) =
: 0 altrimenti

X
+∞ X
+∞
YE (z) = yE (n)z −n = yE (n)z −n
n=−∞ n=kL=−∞

X
+∞ X
+∞
= yE (kL)z −kL = x(k)(z L )−k = X(z L )
k=−∞ k=−∞


X
+∞
YE (ω) = YE (z) = x(k)e−jωkL = X(ωL)
k=−∞
z=ejω

Essendo L > 1, lo spettro viene compresso di un fattore L

Figura 16: Rappresentazione in frequenza di x(n) ed yE (n)


Compressore In generale, nei sottocampionatori, è presente aliasing se x(n) ha frequenze
π
non nulle tra M e π.

Figura 17: Sottocampionatore

yD (n) = x(M n)

X
+∞ X
+∞ X
+∞
YD (z) = yD (n)z −n = x(M n)z −n = x1 (M n)z −n
n=−∞ n=−∞ n=−∞
8
< x(n) se n è multiplo di M
dove x1 (n) =
: 0 altrimenti
è equivalente
8 a scrivere x1 (n) = cM (n)x(n), in cui cM (n) è la sequenza pettine
< 1 se n è multiplo di M
cM (n) =
: 0 altrimenti
X
+∞
−n
X
+∞
k
−L 1
⇒ YD (z) = x1 (M n)z = x1 (k)z = X1 (z M )
n=−∞ k=−∞

P M −1 j 2π
kn PM −1 −kn 2π
Poiché cM (n) = M1
k=0 e M = 1
M k=0 WM con WM = e−j M , sostituiamo la
funzione pettine in X1 (z):

1 X X
M −1 +∞
−kn −n
X1 (z) = Z{x(n)cM (n)} = x(n)WM z
M n=−∞ k=0

1 X X
M −1 +∞
k
= x(n)(WM z)−n
M n=−∞
k=0

1 X
M −1
k
= X(zWM )
M
k=0

1 X
M −1
1 k
YD (z) = X(z M WM )
M
k=0
Da cui è immediato il calcolo della Trasformata di Fourier

 
1 X
M −1
ω − 2πk
YD (ω) = YD (z) = X
M M
k=0
z=ejω

Per M > 1 la YD (ω) è data dalla somma di M repliche traslate con espansione della scala
delle frequenze di un fattore M.

Figura 18: Rappresentazione in frequenza di yD (n)

π
Se X(ω) = 0 per M
≤ |ω| ≤ π, la decimazione per M non provoca aliasing
Figura 19: Rappresentazione in frequenza di yD (n) nel caso M = 3
I sottocampionatori ed i sovracampionatori sono sistemi lineari tempo
invarianti?
Se il sistema fosse tempo-invariante, dovrebbe essere verificato che
T [x(n)] = y(n) =⇒ T [x(n − n0 )] = y(n − n0 ) ∀x(n) ∀n0

Espansore

T [X(z)z −n0 ] = X(z L )z −Ln0 6= X(z L )z −n0

Compressore La tempo varianza è ovvia.


Nel caso con M = 2 e con n0 = 1 sono presi i campioni dispari invece dei campioni par
Circuito di decimazione

Figura 20: Schema a blocchi del circuito di decimazione

H(z) è il filtro passa-basso di decimazione, le sue caratteristiche dipendono da quanto


aliasing è tollerato (nei banchi QMF l’aliasing viene soppresso)

Figura 21: Filtro passa-basso H(ω)


Circuito di interpolazione

Figura 22: Schema a blocchi del circuito di interpolazione

Figura 23: Filtro passa-basso H(ω)


Variazione frazionale della frequenza di campionamento (non a fattore intero

L
fc −→ fc
M
Ex.1

Figura 24: Rappresentazione in frequenza di x(n)

Non è possibile decimare per 2 perché verrebbe generato aliasing, è però possibile ridurre d
un fattore 32 (ridurre a 32 Fc ) la frequenza di campionamento.

Figura 25: Rappresentazione in frequenza di y(n)


Utiliziamo allora un circuito di interpolazione con L = 2 ed in cascata un circuito di
decimazione con M = 3.

Figura 26: Circuito interpolatore e circuito decimatore in cascata


Figura 27: Rappresentazione in frequenza del filtro h(n)

8
>
> 1 se |ω| ≤ π
< 3
π
H(ω) = qualsiasi se ≤ |ω| ≤ 2π
>
>
3 3
: 2π
0 se 3
≤ |ω| ≤ π
Figura 28: Rappresentazioni in frequenza di w(n), v(n) e y(n)
Ex.2

Figura 29: Relazione y0 (n), x(n) e y1 (n), x(n)


Figura 30: Rappresentazioni in frequenza di h0 (n), h1 (n) ed x(n)

Disegnare Y0 (ω) e Y1 (ω)


Figura 31: Rappresentazioni in frequenza di s(n), v(n), y0 (n), e y1 (n)

La sequenza y1 (n) è uguale a 1


2
x(n), mentre y0 (n) è uguale a 1
2
(−1)n x(n). La somma di
y0 (n) e di y1 (n) dà v(n).
Ex.3 Scrivere y(n) in funzione di x(n)

Figura 32: Relazione tra y(n) e x(n)

8
>
> Y (z) = X 2
3 (z )
>
>
>
< X (z) = 1 X (z 31 ) + 1 X (z 31 W ) + 1 X (z 13 W 2 )
3 3 2 3 2 3 3 2 3
>
> X2 (z) = 1
X (z
1
2 )
1
+ 12 X1 (z 2 W2 )
>
> 2 1
>
: 3
X1 (z) = X(z )

1 3 1 3
X2 (z) = X(z ) + X(z W23 )
2 2
2 2 |{z}
−1
" # " #
1 1 1 1 1 1
X3 (z) = X(z ) + X(−z ) +
2 2 X(z W2 ) + X(−z 2 W23 ) +
2
3
6 6 |{z} |{z}
−1 −1

" # !
1 1 3 1 3 1 1 1
+ X(z W3 ) + X(−z W3 ) =
2 2 X(z ) + X(−z )
2 2
6 |{z} |{z} 2
1 1

!
1
Y (z) = X(z) + X(−z)
2

!
1
y(n) = x(n) + (−1)n x(n)
2

Sovracampionare e sottocampionare di uno stesso fattore Mk non modifica il segnale


analizzato perché nel primo sistema sono aggiunti degli zeri e nel secondo vengono tolti.
Banco di filtri
Un banco di filtri è un insieme di filtri numerici con ingresso comune (banco di analisi),
oppure con uscita comune (banco di sintesi).

Figura 33: Banco di analisi


Figura 34: Banco di sintesi

Tipiche risposte in frequenza di filtri di analisi possono essere:


Figura 35: Banco di filtri non sovrapposti
Figura 36: Banco di filtri marginalmente sovrapposti
Figura 37: Banco di filtri sovrapposti