11.01.2015 Views

Estructura de filtros

Estructura de filtros

Estructura de filtros

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Estructura</strong> <strong>de</strong> <strong>filtros</strong>


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Definición<br />

Es la forma en la que se organiza la implementación


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Definición<br />

Es la forma en la que se organiza la implementación<br />

Elementos: Retardos, ganancias y sumadores<br />

Es <strong>de</strong>finida por los elementos y la forma en que se vinculan


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Definición<br />

Es la forma en la que se organiza la implementación<br />

Elementos: Retardos, ganancias y sumadores<br />

Es <strong>de</strong>finida por los elementos y la forma en que se vinculan<br />

Pue<strong>de</strong> ser hardware o software


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Diagrama <strong>de</strong> bloques<br />

retardo suma<br />

producto


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Diagrama <strong>de</strong> bloques<br />

retardo producto suma<br />

paralelo cascada realimentación


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Características<br />

Complejidad computacional<br />

Requisitos <strong>de</strong> memoria<br />

Efectos <strong>de</strong> las palabras <strong>de</strong> longitud finita<br />

Factores adicionales (paralelización, pipeline, etc)


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Análisis <strong>de</strong> sistemas LIT<br />

N<br />

M<br />

∑aky ⎡ ⎢n − k ⎤ ⎥ = bkx ⎡ n k<br />

⎤<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

k = 0 k = 0


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Análisis <strong>de</strong> sistemas LIT<br />

N<br />

M<br />

∑aky ⎡ ⎢n − k ⎤ ⎥ = bkx ⎡ n k<br />

⎤<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

k = 0 k = 0<br />

M<br />

[ ] = k [ − ] − k [ − ]<br />

∑<br />

y n b x n k a y n k<br />

N<br />

∑<br />

k = 0 k = 1


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Análisis <strong>de</strong> sistemas LIT<br />

N<br />

M<br />

∑aky ⎡ ⎢n − k ⎤ ⎥ = bkx ⎡ n k<br />

⎤<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

k = 0 k = 0<br />

M<br />

[ ] = k [ − ] − k [ − ]<br />

∑<br />

N<br />

∑<br />

y n b x n k a y n k<br />

k = 0 k = 1<br />

H( z)<br />

M<br />

−k<br />

bkz<br />

Y( z)<br />

∑<br />

k = 0<br />

= =<br />

N<br />

X( z)<br />

⎛ −k<br />

⎞<br />

k<br />

⎜1+<br />

⎝<br />

∑<br />

k = 1<br />

a z<br />

⎟<br />


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Análisis <strong>de</strong> sistemas LIT<br />

H(<br />

z)<br />

=<br />

M<br />

∑<br />

k = 0<br />

b<br />

k<br />

z<br />

FIR<br />

MA (Promediador Móvil)<br />

−k<br />

=<br />

z<br />

1<br />

M<br />

∑<br />

M<br />

k = 0<br />

b<br />

M ceros y 1 polo <strong>de</strong> or<strong>de</strong>n M<br />

k<br />

z<br />

M −k<br />

H(<br />

z)<br />

0<br />

= =<br />

N<br />

N<br />

−k<br />

k<br />

∑<br />

k = 0<br />

H(<br />

z)<br />

b<br />

a z<br />

IIR<br />

AR (Autoregresivo)<br />

M<br />

∑<br />

k = 0<br />

= N<br />

∑<br />

k = 0<br />

b<br />

a<br />

k<br />

k<br />

∑<br />

b<br />

k = 0<br />

z<br />

z<br />

−k<br />

−k<br />

0<br />

a<br />

z<br />

k<br />

z<br />

N<br />

N −k<br />

N polos y 1 cero <strong>de</strong> or<strong>de</strong>n N<br />

ARMA (Promediador Móvil Autoregresivo)<br />

M ceros y N polos no triviales


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR – Forma Directa<br />

M<br />

⎡<br />

⎢ ⎤ ⎥ = k<br />

⎡ ⎤<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

k = 0<br />

y n b x n k


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR – Forma Directa<br />

M+1 productos, M sumas y M retardos


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR – Forma Directa con simetría<br />

h n = ± h M − n<br />

⎡ ⎤ ⎡ ⎤<br />

⎢⎣ ⎥⎦ ⎢⎣ ⎥⎦


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR – Forma Directa con simetría<br />

⎡<br />

⎤<br />

( ⎢ ( ) ⎥)<br />

K<br />

⎡ ⎤ ⎡ ⎤<br />

⎢ ⎥ = k<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥ + − −<br />

⎦ ⎣ ⎦<br />

k = 0<br />

y n b x n k x n N k


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR – Forma Directa con simetría<br />

(M+1)/2 ó M/2 productos, M sumas y M retardos


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa I<br />

M<br />

⎧<br />

⎡ ⎤ ⎡ ⎤<br />

k<br />

v ⎢n ⎥ = b x n k<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

⎪<br />

k = 0<br />

⎨<br />

N<br />

⎪ 1 ⎡<br />

⎤<br />

⎡ ⎤ ⎡ ⎤ ⎡ ⎤<br />

y ⎢n ⎥ = v ⎢n ⎥ − aky ⎢n − k<br />

⎣ ⎦ ⎣ ⎦ ⎣ ⎥⎦<br />

⎪ a<br />

⎢ ∑ ⎥<br />

⎩<br />

0 ⎣ k = 1 ⎦


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa I<br />

M<br />

⎧<br />

⎡ ⎤ ⎡ ⎤<br />

k<br />

v ⎢n ⎥ = b x n k<br />

⎣ ⎦ ∑ ⎢ −<br />

⎣ ⎥⎦<br />

⎪<br />

k = 0<br />

⎨<br />

N<br />

⎪ 1 ⎡<br />

⎤<br />

⎡ ⎤ ⎡ ⎤ ⎡ ⎤<br />

y ⎢n ⎥ = v ⎢n ⎥ − aky ⎢n − k<br />

⎣ ⎦ ⎣ ⎦ ⎣ ⎥⎦<br />

⎪ a<br />

⎢ ∑ ⎥<br />

⎩<br />

0 ⎣ k = 1 ⎦<br />

M<br />

⎧<br />

( ) ( ) ( ) ( ) k<br />

⎪V z = X z N z = X z ∑b z<br />

k = 0<br />

⎪<br />

⎨<br />

1 W ( z)<br />

⎪Y ( z) = V( z)<br />

= D<br />

N<br />

( z )<br />

−k<br />

⎪<br />

∑akz<br />

⎩<br />

k = 0<br />

−k


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa I


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa I<br />

M+N+1 productos, M+N sumas y M+N retardos


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa II<br />

N<br />

⎧ 1 ⎡ ⎤<br />

[ ] = [ ] − k [ − ]<br />

∑<br />

w n x n a w n k<br />

a<br />

⎢ ⎥<br />

⎪ 0 ⎣ k = 1 ⎦<br />

⎨<br />

M<br />

⎪<br />

y [ n] = ∑bkw [ n − k]<br />

⎪⎩<br />

k = 0


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa II<br />

N<br />

⎧ 1 ⎡ ⎤<br />

[ ] = [ ] − k [ − ]<br />

∑<br />

w n x n a w n k<br />

a<br />

⎢ ⎥<br />

⎪ 0 ⎣ k = 1 ⎦<br />

⎨<br />

M<br />

⎪<br />

y [ n] = ∑bkw [ n − k]<br />

⎪⎩<br />

k = 0<br />

⎧<br />

1 X( z)<br />

⎪<br />

W ( z) = X( z)<br />

= D<br />

N<br />

( z )<br />

−k<br />

⎪<br />

∑akz<br />

⎨<br />

k = 0<br />

⎪<br />

M<br />

⎪ Y( z) = W ( z) N( z) = W ( z)<br />

∑bkz<br />

⎩<br />

k = 0<br />

−k


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa II


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa II


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR – Forma Directa II<br />

M+N+1 productos, M+N sumas y máx{M;N} retardos


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR Cascada<br />

K<br />

K<br />

1 2<br />

M 1<br />

H ( z) Hk( z) ( bk )<br />

0 bk 1 z − k 2 −<br />

⎧ + ⎫<br />

= ∏ = ∏ + + b z ; K = int ⎨ ⎬<br />

k = 1 k = 1<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR Cascada<br />

[ ] = 0 [ ] + 1 [ − 1] + 2 [ − 2]<br />

[ ] = x1[ n]<br />

[ ] = K [ ]<br />

yk n bk xk n bk xk n bk xk<br />

n<br />

x n<br />

y n y n


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR Cascada<br />

3K productos, 2K sumas y 2K retardos<br />

K<br />

⎧M<br />

+ 1⎫<br />

= int ⎨ ⎬<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR Cascada con Simetría<br />

K<br />

K<br />

( ) ( ) ⎡ ( 1 ) ( )<br />

−4 −1 −3 −2<br />

∏<br />

k<br />

∏ ⎤<br />

= =<br />

⎣<br />

k 0 k1 k 2<br />

k 1 k 1<br />

⎦<br />

H z = H z = c + z + c z + z + c z<br />

K<br />

⎧M<br />

+ 1⎫<br />

= int ⎨ ⎬<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

FIR Cascada con simetría<br />

int{3/2K} productos, 2K sumas y 2K retardos<br />

K<br />

⎧M<br />

+ 1⎫<br />

= int ⎨ ⎬<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR Cascada<br />

K<br />

K<br />

b b z b z N<br />

H ( z)<br />

= Hk( z) = ; K = int ⎨ ⎬<br />

∏<br />

∏<br />

k = 1 k = 1<br />

−1 −2<br />

k 0 + k1 + k 2<br />

⎧ + 1⎫<br />

−1 −2<br />

1+ ak1z<br />

+ ak<br />

2z<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR Cascada<br />

k [ ] = ⎡<br />

⎣<br />

k [ ] − k1 [ −1] − k 2 [ − 2]<br />

⎤<br />

⎦<br />

[ ] = 0 [ ] + 1 [ − 1] + 2 [ − 2]<br />

[ ] = x1[ n]<br />

[ ] = K [ ]<br />

w n x n a w n a w n<br />

yk n bk wk n bk wk n bk wk<br />

n<br />

x n<br />

y n y n


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR Cascada<br />

5K productos, 4K sumas y 2K retardos<br />

K<br />

⎧N<br />

+ 1⎫<br />

= int ⎨ ⎬<br />

⎩ 2 ⎭


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR Paralelo<br />

bM<br />

d =<br />

aN<br />

⎧N<br />

+ 1⎫<br />

K = int ⎨ ⎬<br />

⎩ 2 ⎭<br />

( )<br />

K<br />

∑<br />

H z = d + Hk( z)<br />

= d +<br />

K<br />

∑<br />

k = 1 k = 1<br />

1<br />

−1<br />

bk<br />

0 + bk1z<br />

a z a z<br />

−1 −2<br />

+ k1 + k 2


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

IIR Paralelo<br />

[ ] = [ ] + [ ]<br />

K<br />

∑<br />

y n dx n y n<br />

k=<br />

1<br />

k<br />

[ ] = k 0 [ ] + k1<br />

[ −1]<br />

[ ] = [ ] − k1 [ −1] − k1<br />

[ − 2]<br />

y n b w n b w n<br />

k k k<br />

w n x n a w n a w n<br />

k k k


<strong>Estructura</strong> <strong>de</strong> Filtros<br />

Transposición

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!