Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica SFD 2008 09
Practica SFD 2008 09
ndice
1
35
A. OBJETIVOS
Los filtros digitales se pueden clasificar en dos grandes grupos: aquellos que presentan
una respuesta al impulso de duracin infinita (IIR) y, por el contrario, los sistemas FIR o de
respuesta al impulso finita.
En el apartado de fundamentos tericos se van a introducir los conceptos fundamentales
que caracterizan a cada uno de los grupos, para a continuacin estudiar con detalle las
tcnicas ms empleadas en la etapa de aproximacin o clculo de los coeficientes.
Para sistemas IIR se van a presentar los mtodos de ubicacin de polos y ceros, y el
diseo de filtros digitales a partir de prototipos analgicos. Se emplearn las transformaciones
invariante de impulso y bilineal. En este apartado se pretende que se distingan las diferencias
que se producen al emplear cada una de ellas, y que se elija en cada momento y en funcin del
tipo de filtro, la ms apropiada.
Una de las caractersticas ms importantes de los sistemas FIR se debe a que pueden
presentar una fase de la respuesta en frecuencia lineal. Se estudiarn las condiciones que debe
cumplir la respuesta al impulso y los distintos grupos de filtros FIR que tienen fase lineal. En
la etapa de aproximacin se desarrollar el mtodo de la Transformada de Fourier o de la
ventana. El objetivo fundamental ser apreciar la influencia de la longitud y de la forma de
diversas ventanas, y cmo queda afectada la respuesta en frecuencia del filtro deseado al
truncar su respuesta al impulso.
En la realizacin de la prctica se van a disear filtros digitales siguiendo todos los
mtodos desarrollados en los fundamentos tericos, y adems se dedicar un apartado al
diseo de filtros FIR por el procedimiento de Parks-McClellan, el cual obtiene filtros ptimos
en el sentido de Chebyshev.
B. FUNDAMENTOS TERICOS
1.
k =0
k =1
y[n ] =
bk x[n k ] + ak y[n k ]
(1.1)
Estos sistemas no pueden realizarse de forma no recursiva, ya que para calcular la salida en
el instante "n" hemos de considerar las salidas en los instantes "n-k", necesitando la estructura
lazos de realimentacin. Estas realizaciones realimentadas son potencialmente inestables.
Para calcular la salida por la expresin (1.1) necesitamos N+M+1 multiplicaciones y
N+M sumas. Sin embargo, empleando la expresin establecida para la convolucin directa
(1.2) el nmero de operaciones se hara infinito.
y[n ] =
h[k ]x[n k ]
(1.2)
k =0
(z ) =
bk z k
(z )
h[n]z n = (z ) =
n =0
k =0
ak z
(1.3)
k
k =1
Dicha funcin no puede tratarse en forma de polinomio, pues tendra infinitos trminos,
sino como una funcin racional, cociente de dos polinomios, que tendr polos en puntos
finitos del plano z en general situados fuera del origen, lo cual no ocurre en los sistemas
F.I.R.. La presencia de estos polos proporciona mayor flexibilidad y potencia en el problema
de la aproximacin, pero conlleva otras dificultades.
Normalmente un filtro I.I.R. necesita menos coeficientes que el correspondiente F.I.R.
para las mismas especificaciones. Se emplean cuando se requieren transiciones abruptas y alto
rendimiento. El precio que se paga es que se convierta en inestable o se degraden las
caractersticas en frecuencia si no se toman algunas precauciones.
La respuesta en frecuencia (1.4) se obtiene, si el sistema es estable, particularizando en
la funcin del sistema los puntos z en la circunferencia de radio unidad z = e j .
M
( ) =
h[n]e jn =
n =0
bk e jk
k =0
ak e
(1.4)
jk
k =1
Los sistemas I.I.R. no van a poder presentar una caracterstica de fase exactamente
lineal si queremos que sean causales. La solucin ms habitual se basa en aproximar el
2:
p:
s:
p:
s:
un filtro analgico.
Los mtodos de aproximacin convencionales funcionan bien en los filtros
H a (s ) =
k sk
k =0
N
k s
k =0
(s c k )
k =1
N
(s d k )
(1.5)
k =1
Una vez que se han obtenido los coeficientes {k} y {k}, o bien los ceros y los polos
{ck} y {dk} del filtro analgico, se emplean algunas transformaciones para convertirlo en un
filtro digital. Esta tcnica ser efectiva si tiene unas propiedades:
a. El eje "j" del plano s debera transformarse en la circunferencia unidad del plano z.
De esta forma la transformacin conserva en lo esencial el comportamiento en
frecuencia del sistema continuo.
b. La transformacin debe conservar la estabilidad del sistema. Cada punto del
semiplano izquierdo del plano s debera transformarse en otro interior a la
circunferencia unidad.
Existen diversos mtodos para realizar la conversin de la funcin de sistema analgica
en la digital, destacando por su utilizacin la transformacin invariante de impulso y la
transformacin bilineal. La relacin dificultad/eficiencia de estas tcnicas es muy baja.
1.3.2.1 Transformacin invariante de impulso
Se basa en tomar como respuesta al impulso del filtro digital una versin muestreada de
la respuesta al impulso del sistema de tiempo continuo empleando un perodo de muestreo T
(expresin 1.6). Dicho valor es irrelevante cuando la especificacin original se da en el
dominio discreto. Adems, no tiene porqu coincidir con el valor del perodo que introduce el
convertidor A/D.
h[n ] = k ha (n T )
(1.6)
(1.7)
H a (s ) =
(s Kd k )
k =1
(1.8)
Ak = H a (s ) (s d k ) s = d k
(1.9)
ha (t ) = Ak e d k t u (t )
(1.10)
k =1
(1.11)
k =1
H ( z ) = h[n] z n = Ak e d k T
n=0
H ( z ) = Ak e d k T z 1
k =1
n =0
z n
(1.12)
(1.13)
n = 0 k =1
) = A
(1 e
n
k =1
k
d k T
z 1
s=
(
(
2 1 z
T 1 + z 1
)
)
T
1 +
2
z=
T
1
2
(1.14)
1 + j
2
z=
T
1 j
2
(1.15)
La funcin del sistema del filtro digital se obtiene mediante un cambio de variable en la
funcin de sistema del filtro analgico (expresin 1.17). Hay que advertir que si bien se
conserva el orden del denominador en ambos sistemas, sin embargo, el orden del numerador
puede ser mayor en el sistema discreto que en el continuo debido a que los ceros en del
plano s se transforman en ceros en z = -1.
H ( z ) = H (s )
s=
(
(
2 1 z 1
T 1+ z 1
)
)
(1.17)
(
(
)
)
2 1 e j
2
sen ( 2 ) 2
j
j
tg
T 1 + e j T
cos( 2 ) T
2
(1.18)
(1.19)
T = 2 tg
En la figura 1.4 se representa la funcin establecida por (1.19). En la figura 1.5 se puede
observar el efecto que trae consigo la relacin no lineal que existe entre la frecuencia
analgica y la digital. Esta no linealidad limita la aplicacin de la transformacin bilineal a
respuestas en frecuencia analgicas idealmente formadas por tramos constantes, caso en el
que se mantienen las caractersticas del diseo analgico (decrecimiento montono, rizado
constante, etc.).
fig. 1.4: transformacin del eje de frecuencias de tiempo continuo en la circunferencia de radio unidad.
FG IJ
H K
tan
Td
2
k =
2 k
tg
T
2
(1.20)
Disear un filtro analgico con las frecuencias crticas analgicas calculadas. Las
aproximaciones ms utilizadas en esta fase son las de Butterworth, Chebyshev o
elptica.
Obtener la funcin del sistema discreto empleando la transformacin bilineal
(expresin 1.17)
Cuando no interesa mantener la respuesta al impulso o la fase de la respuesta en
frecuencia del filtro analgico, la transformacin bilineal siempre resulta mejor que la
invariante de impulso debido a que no tiene problemas de solapamiento.
Hasta aqu hemos estudiado cmo obtener filtros paso bajo digitales a partir de
prototipos analgicos, tambin paso bajo. Cuando se desean filtros con otro comportamiento
en frecuencia como paso alto, paso banda o banda eliminada se parte tambin de un prototipo
analgico paso bajo al que hay que aplicar dos transformaciones:
Una para convertir el filtro analgico en digital.
Otra para trasladar la banda de paso donde sea conveniente (ser la transformacin
de frecuencias).
Estas dos operaciones se pueden hacer en el orden que queramos (figura 1.6), pero si
realizamos primero la transformacin de frecuencias no podemos aplicar la transformacin
invariante de impulso.
Filtro paso bajo analgico Filtro analgico transformado Filtro discreto
H a (s )
H a ( )
H d (z )
Filtro paso bajo analgico Filtro paso bajo discreto Filtro discreto
H a (s )
H l ( )
H( z )
fig. 1.6: operaciones de conversin de un filtro paso bajo analgico en un filtro digital.
( )
1 = G z 1
(z ) = l ( )
(1.21)
( )
1 = G z 1
(1.22)
( )
Transformacin
Paso bajo
=
p
sen
1 z
2
+ p
Paso alto
p
cos
=
p
cos
1 + z
+ p
2
p
2K 1 1
z +
1
1
+
+1
=
1 2 2 1
z
z +1
+1
+1
z
Paso banda
p 2 + p1
cos
2
=
p 2 p1
cos
2
p 2 p1
p
. tg
= cotg
2
2
p1: frecuencia inferior de corte deseada
p 2 : frecuencia superior de corte deseada
Banda
eliminada
z
=
1
1+
2
1+
2
1+
1
1+
+1
p 2 + p1
cos
2
=
p 2 p1
cos
2
p 2 p1
p
. tg
= tg
2
2
p1: frecuencia inferior de corte deseada
p 2 : frecuencia superior de corte deseada
2.
h[n ] = bk [n k ]
(1.23)
k =0
(1.24)
k =0
H (z ) =
h[n]z
n =
L 1
= bk z k
(1.25)
k =0
h[n ] = h[ L 1 n ]
(1.26)
H ( ) = h[n ]e jn
(1.27)
n =0
Los filtros F.I.R. son muy fciles de realizar. La mayora de los procesadores de
palabra finita que los IIR, ofreciendo diversas ventajas en los clculos que conlleva
el filtrado.
frecuencia que presente el filtro. El retardo de fase y de grupo proporcionan una medida de
cmo el filtro va a llevar a cabo estas modificaciones. Un filtro que presente una caracterstica
de fase no lineal ocasionar una distorsin de fase en la seal que lo atraviese, pues cada
componente en frecuencia sufre un retardo no proporcional a dicha frecuencia, modificndose
la relacin entre armnicos. Se puede evitar empleando filtros con caractersticas de fase
exactamente lineal en determinadas bandas de frecuencia.
Un filtro tiene fase de la respuesta en frecuencia lineal si sta satisface cualquiera de las
relaciones (1.28) (1.29), con y constantes. Si el filtro tiene la respuesta al impulso con
simetra par con respecto al punto central de la secuencia (1.30), satisface la primera
condicin y tendr constantes el retardo de fase y de grupo. En este caso la fase de la
respuesta en frecuencia es funcin de la longitud del filtro (1.31).
( ) =
(1.28)
( ) =
(1.29)
h[n ] = h[L n 1]
n = 0,1... (L 1) 2
n = 0,1...(L 2 1)
para L impar
para L par
L 1
( ) =
(1.30)
(1.31)
( ) =
n = 0,1... (L 1) 2
n = 0,1...(L 2 1)
para L impar
para L par
L 1
2 2
(1.32)
(1.33)
En la tabla 1.2 se indica la clasificacin existente para los filtros FIR de fase lineal
segn su simetra y el nmero de coeficientes.
Tabla 1.2: filtros de fase lineal.
SIMETRA
nmero de coeficientes L
Tipo de filtro
PAR
IMPAR
h[n]=h[L-n-1]
PAR
II
IMPAR
IMPAR
III
h[n]=-h[L-n-1]
PAR
IV
Es importante indicar que en los cuatro tipos de filtros se puede demostrar que si
aparece un cero en cualquier punto z 0 del plano z, debe ir acompaado de otro recproco
conjugado (1 z0 ) . Si adems la respuesta al impulso es real, la funcin del sistema H(z) ser
una funcin racional con coeficientes reales, y cada cero debe ir acompaado por su
conjugado. En consecuencia, en este tipo de sistemas los ceros aparecen por cuartetos
recprocos conjugados con las siguientes excepciones:
1. Los ceros sobre la circunferencia unidad (salvo en z = 1) aparecen por parejas, ya
que coinciden con sus recprocos.
2. Los ceros reales no situados en la circunferencia unidad aparecen por parejas, pues
coinciden con sus conjugados.
3. Los ceros en z = 1 coinciden con su recproco y su conjugado, pudiendo aparecer
solos.
Se puede demostrar que en los filtros tipo II debe aparecer un cero en z = 1 , lo que
significa que no pueden realizar caractersticas paso alto, que en los filtros tipo III deben
aparecer ceros en z = 1 y z = 1 , con lo que no sirven para sistemas que permitan el paso de
las bajas y/o de las altas frecuencias, y que para los tipo IV el cero obligatorio se sita en
z = 1 , con lo que no se pueden emplear como filtros paso bajo.
H I ( ) =
hI [n]e jn
(1.34)
n =
h I [n ] =
1
2
H I ()e
jn
(1.35)
pequea), obteniendo de esta forma una h A [n ] (respuesta al impulso aproximada) finita que
desplazada puede representar a un filtro F.I.R. causal. Cuantas ms muestras se tomen de
h I [n ] , mejor ser la aproximacin de la caracterstica en frecuencia, pero el filtro ser ms
caro de realizar y presentar mayor retardo.
El truncado efectuado sobre la respuesta al impulso deseada h I [n ] para obtener la
aproximada h A [n ] se puede expresar como el resultado de multiplicar la primera por una
secuencia de duracin limitada w[n] que recibe el nombre de ventana de observacin o
simplemente ventana. La operacin que realizamos en el dominio del tiempo viene indicada
por (1.36), y su respuesta en frecuencia resultante por (1.37).
h A [n ] = h I [n ] w[n ]
H A ( ) =
1
[H I ( ) W ( )]
2
(1.36)
(1.37)
Para una ventana dada, la amplitud relativa de los lbulos permanece invariante al
modificar el valor de la longitud.
1.2
1
0.8
0.6
Amplitud
0.4
0.2
0
-0.2
0
10
20
30
Indice
40
50
60
0
-10
-20
-30
dB`s
-40
-50
-60
-70
0.5
1.5
2.5
Veamos cmo se puede evitar el efecto de las oscilaciones en las bandas de paso y
eliminada. Es evidente que la amplitud de los lbulos secundarios viene determinada por la
forma de w[n]. Si la ventana presenta cambios abruptos en el dominio del tiempo (como la
ventana rectangular) los lbulos secundarios tendrn amplitudes considerables. Entonces, una
forma de evitar el efecto de dichas oscilaciones consiste en utilizar ventanas cuyos valores en
amplitud en el dominio del tiempo caigan a cero gradualmente. Sin embargo, con este tipo de
VENTANA
w[n]
( M n M )
Rectangular
Hanning
1
2n
1 + cos
2
2M + 1
Hamming
Blackman
2n
2M + 1
A *LP
Ai
4 (2 M + 1)
13'3
20.9 0.92 M
8 (2 M + 1)
31.5
43.9 3.11 M
8 (2 M + 1)
42.7
54.5 3.32 M
58.1
75.3 5.56 M
12 (2 M + 1)
2n
4n
+ 0.08 cos
2M + 1
2M + 1
A sb
Hay distintas funciones de ventana que se caracterizan por una respuesta en frecuencia
adecuada para el diseo de filtros. Algunas de las ms populares son las que se indican en la
tabla 1.3. La ventana triangular o de Bartlett se puede obtener como el resultado de la
convolucin de dos rectangulares, y consigue aumentar la amplitud mxima relativa del
lbulo primario al secundario (de -13'5 dBs a -27 dBs) a costa de ensanchar el lbulo
principal (de 4 L a 8 L ). Otras ventanas de gran aceptacin son las Hanning y Hamming,
ya que llegan a un buen compromiso entre la selectividad del filtro deseado (lbulo principal
estrecho) y el rizado en las bandas de paso y atenuada (lbulos laterales de amplitud
pequea).
En todas las ventanas de la tabla 1.3 el compromiso entre lbulo principal y secundarios
es fijo. En la ventana de Kaiser, definida por la expresin (1.38), dicho compromiso puede
variarse. El trmino Io() es la funcin de Bessel modificada de primera clase y de orden cero
y = (L-1)/2 . Cuando n = 0, w[n] vale 1 para cualquier valor de y de L. Para distintos
valores de se obtienen ventanas ms o menos suavizadas en los bordes. Para =0 se obtiene
la ventana rectangular y con = 5.44 aparece una ventana muy parecida a la de Hamming.
Incrementando el valor de se ensancha el lbulo principal y disminuye la amplitud de los
lbulos secundarios.
2
I 0 1 n
w[n ] =
0 n L 1
I 0 ( )
resto
0
(1.38)
0.1102 ( A 8.7 )
(1.39)
A > 50
21 A 50
A < 21
(1.40)
3.
distribucin de bandas con cualquiera de los dos tipos de filtros. Sin embargo, hay
algunas caractersticas de amplitud, como la requerida en los sistemas
diferenciadores, que se realiza mejor con un sistema FIR. Sin embargo, los filtros
paso-todo slo se pueden realizar con sistemas IIR, ya que los FIR tienen todos sus
polos en el origen.
FASE DE LA RESPUESTA EN FRECUENCIA: los sistemas FIR pueden conseguir
una caracterstica de fase exactamente lineal, mientras que los IIR slo se pueden
aproximar a ella a costa de un gran aumento de la complejidad.
ESTABILIDAD:
suelen exigir aproximaciones iterativas, mientras que los sistemas IIR suelen
disearse con frmulas cerradas y transformaciones sencillas como la bilineal.
ESTRUCTURAS: los sistemas FIR admiten realizaciones recursivas y no recursivas.
actual y las anteriores de la seal de entrada, as como los coeficientes del filtro. Este
inconveniente se va reduciendo con el abaratamiento y el aumento de la escala de
integracin de las memorias. Los filtros IIR necesitan menos registros de
almacenamiento, ya que el nmero de coeficientes es menor que el equivalente FIR.
que sus equivalentes FIR, puede ocurrir que el sistema FIR emplee menos tiempo
para calcular la salida que el IIR. La razn es la regularidad en las operaciones que se
realizan en un filtro no recursivo, comparada con la irregularidad necesaria para un
sistema recursivo.
C. CUESTIONES PREVIAS
1.- Dado un sistema cuya respuesta en frecuencia es:
j 7
e
H D ( ) =
0
<
resto
con
1
w[n ] =
0
0 n 14
resto
demuestre, a partir de los coeficientes del nuevo filtro, que presenta una caracterstica de fase
lineal.
4.- Dado un filtro analgico caracterizado por la siguiente funcin de sistema:
H a (s ) =
(s + 1)(s + 3)
(s + 2 )
(s + 1)(s + 3)
Hz.
No debe superar 0'001 a partir de los 1400 Hz.
d) Calcule el orden del filtro elptico analgico que cumple las especificaciones de la
plantilla, y obtenga la funcin de sistema H c (s ) que lo caracteriza.
dB
-40
-60
-80
-100
g) Calcule el orden del filtro elptico analgico que cumple las especificaciones de la
plantilla del apartado f, y obtenga la funcin de sistema H c (s ) que lo caracteriza.
dB
-40
-60
-80
-100
:
i) Comente los resultados.
Suponga que la relacin entre el mdulo de los polos (r) y el ancho de banda a 3 dB
(BW) es:
BW
para r > 0.9
r 1
fs
a) Representar el diagrama de polos y de ceros de la funcin de sistema del filtro.
1.5
0.5
-0.5
-1
-1.5
dB`s
-20
-40
-60
-80
-100
-120
2.
ALSmx (dB)
LS
aLP
ALSmx (dB)
LS
aLP
RECTANGULAR
TRIANGULAR
HANNING
HAMMING
KAISER
L = 64:
VENTANA
RECTANGULAR
TRIANGULAR
HANNING
HAMMING
KAISER
En este apartado se pretende disear un filtro FIR causal de fase lineal empleando el
mtodo de la ventana. Para ello se va a partir de la respuesta en frecuencia de un filtro ideal
indicada en la figura 1.8, imponindole la plantilla de especificaciones que aparece en la
figura 1.9.
Una vez obtenida, trunque dicha respuesta al impulso empleando las ventanas
rectangular, de Hamming y de Kaiser (=7'865) de longitud 63. Dibuje el mdulo de la
respuesta en frecuencia de los filtros enventanados, representando con detalle las bandas de
paso y transicin.
Mdulo del espectro para la ventana rectangular (L = 63)
20
0
dB`s
-20
-40
-60
-80
-100
-120
dB`s
-5
-10
-15
-20
-25
-30
-35
0.1
0.2
0.3
0.4
dB`s
-20
-40
-60
-80
-100
-120
dB`s
-5
-10
-15
-20
-25
-30
-35
0.1
0.2
0.3
0.4
dBs
-40
-60
-80
-100
-120
-140
-160
dB`s
-5
-10
-15
-20
-25
-30
-35
0.1
0.2
0.3
0.4
b) Indique los filtros enventanados (L=63) que cumplen las condiciones de diseo.
c) Repita el apartado "a" cambiando la longitud de las ventanas de L=63 a L=127. Para
ello debe modificar los comandos anteriormente propuestos:
x=1:127;
t=0.2*(x-64)/pi;
hi=0.2*sinc(t)/pi;
dB`s
-20
-40
-60
-80
-100
-120
dB
-10
-20
-30
-40
-50
-60
0.1
0.2
0.3
0.4
-40
-60
-80
-100
-120
dB
-10
-20
-30
-40
-50
-60
0.1
0.2
0.3
0.4
dBs
-40
-60
-80
-100
-120
-140
-160
dB
-10
-20
-30
-40
-50
-60
0
0.1
0.2
0.3
0.4
d) Indique los filtros enventanados (L=127) que cumplen las condiciones de diseo.
En el proceso de eliminacin del ruido de la red se desea utilizar un filtro FIR banda
eliminada por las caractersticas de fase lineal que pueden ofrecer este tipo de sistemas. Se
sigue el procedimiento indicado en la figura 1.10, es decir, disear directamente el filtro y
eliminar el ruido.
A. OBJETIVOS
En esta prctica se introducen las caractersticas ms importantes de los filtros digitales,
y se establece una comparativa con los tradicionales filtros analgicos. En los fundamentos
tericos se proponen las etapas que se deben tener en consideracin para disear y construir
con xito un filtro digital. De todas las etapas, se desarrollan con mayor profundidad las de
realizacin empleando una estructura y los anlisis de longitud de palabra finita, ya que sern
las etapas que se considerarn en el laboratorio.
Se pretende poner de manifiesto la problemtica de la realizacin de filtros digitales
empleando aritmtica finita a partir de unas especificaciones dadas. Nos limitaremos al
estudio de los efectos producidos por la cuantificacin de los coeficientes del filtro,
analizando con detalle la importancia de las estructuras empleadas para filtros de orden
elevado.
Se representarn los mdulos de las respuestas en frecuencia de los filtros utilizando
precisin infinita y cuantificando con determinado nmero de bits. De esta forma se
observarn las diferencias existentes y se podr estimar la longitud de los registros de
almacenamiento para que la degradacin de las caractersticas sea aceptable.
35
B. FUNDAMENTOS TERICOS
1.
circuitera.
Gracias a la tecnologa VLSI se pueden construir filtros digitales en tamaos muy
biomdicas).
Pueden modificar el rango de trabajo cambiando la frecuencia de muestreo.
mayor para filtros analgicos que para digitales. En situaciones de tiempo real vamos
a encontrar limitaciones con los convertidores A/D y con el tiempo de asentamiento
("settling") del convertidor D/A, restringiendo la frecuencia mxima de muestreo.
Adems, la velocidad del filtro digital va a depender de la velocidad del sistema
digital de procesamiento que se emplee y del nmero de operaciones aritmticas que
aparezcan en el algoritmo.
Efectos de la longitud de palabra finita: en el sistema digital aparecern, entre otros,
analgicos. Sin embargo, una vez diseados, pueden emplearse para otros algoritmos
de tratamiento de seal.
Existen diferentes formas de representar un filtro LTI. Destacamos las ms empleadas:
A travs de su funcin de sistema (2.1) donde X ( z ) e Y ( z ) son las transformadas Z
(z )
(z )
(2.1)
H ( z ) sobre la
circunferencia unidad (si es posible), con lo que se obtiene la respuesta en frecuencia
H ( ) de dicho filtro, donde es la frecuencia digital expresada en radianes.
2.
Estos cinco pasos no son siempre necesarios, ni el orden dado es el que siempre se
sigue. Hay veces en que se solapan varias etapas.
Para llegar al filtro deseado, puede ser necesario iterar unas cuantas veces algunos de
los pasos, tal y como se indica en la figura 2.1.
Ap = 20 log(1 + p )
(2.2)
As = 20 log( s )
(2.3)
Dada una funcin de un sistema discreto, se pueden obtener una gran variedad de
estructuras equivalentes. Se estudiarn algunas de las ms empleadas.
2.3.1.1 Formas directas
bk x[n k ] +
k =0
a k y[n k ]
(2.4)
k =1
bk x[n k ]
(2.5)
k =0
y[n ] = v[n ] +
ak y[n k ]
k =1
(2.6)
Este diagrama de bloques puede modificarse sin que cambie la funcin de sistema, de
manera que se obtenga otra estructura equivalente. Por ejemplo, se puede ver el diagrama de
la primera forma directa como la asociacin en cascada de dos sistemas, cada uno con su
correspondiente funcin de transferencia (figura 2.4a). Si las condiciones iniciales son nulas,
los dos sistemas son LTI y se puede cambiar el orden de la asociacin en cascada sin
modificar la relacin entrada-salida del conjunto (figura 2.4b).
M
(z ) = bk z k
k =0
1
a k z k
(2.7)
k =1
Esta seccin cannica es la ms popular ya que presenta unas buenas propiedades con
respecto al ruido de redondeo y requiere un nmero mnimo de elementos de retardo. El
problema estriba en que puede ocurrir desbordamiento ("overflow") en nodos internos de la
red. Para evitarlo es necesario escalar la entrada con respecto a los nodos conflictivos, de
acuerdo con unos criterios. Sin embargo, el escalado no es obligatorio para la forma directa I,
ya que contiene un nico sumador, y aunque se sature este sumador en algn resultado
intermedio, el resultado final puede ser correcto. Por este motivo, estas ltimas estructuras se
emplean en el diseo de filtros de audio de hi-fi, ya que no hay necesidad de escalar la
entrada.
Para secciones bicuadrticas existe una realizacin alternativa que se denomina forma
acoplada (figura 2.6). Una seccin bicuadrtica segn la forma directa II con los mismos
polos que la anterior es ms sensible al ruido de cuantificacin de los coeficientes en
determinadas zonas (por ejemplo, cercanas a 0 ) que la forma acoplada. Sin embargo, el
precio que se paga en este ltimo caso es que se incrementa el nmero de operaciones, lo cual
conlleva mayor tiempo de ejecucin. Adems, no se puede usar de manera sencilla cuando
aparecen funciones de transferencia con coeficientes de segundo orden en el numerador.
Hay otras dos formas directas (III y IV) que se obtienen inmediatamente a partir de las
formas I y II por aplicacin de la propiedad de transposicin. Esta propiedad nos dice que si
en un diagrama (grafo) cambiamos la orientacin de todas las ramas e intercambiamos la
entrada y la salida, la funcin de sistema no vara. Para la tercera forma directa el grafo es el
representado en la figura 2.7. La cuarta forma directa se obtiene mediante transposicin de la
segunda y tambin es cannica con respecto al nmero de elementos de retardo. Si M=N, se
tiene el diagrama de flujo de la figura 2.8.
Las formas directas presentan las siguientes caractersticas:
Sus coeficientes coinciden con los coeficientes de la funcin del sistema, y no se
(1 g k z ) (1 hk z 1 ) (1 hk* z 1 )
M1
H (z ) = A
k =1
N1
M2
k =1
N2
(1 ck z ) (1 d k z ) (
1
k =1
1 d k*
(2.8)
k =1
Ns
b +b z
H (z ) = 0k 1k 1
k =1
1 a1k z
+ b2 k z 2
a2k z 2
(2.9)
Hay muchas formas diferentes de emparejar polos y ceros para formar cada una de las
H k (z ) . Tericamente la funcin global es la misma, pero en la prctica (debido a la
aritmtica finita) existen grandes diferencias entre unas y otras. Tambin aparecen distintas
realizaciones segn el orden de conexin de las etapas.
Un criterio de seleccin que reduce la sensibilidad es el siguiente:
Los polos ms prximos a la circunferencia unidad deben emparejarse con los ceros
emparejados.
Las secciones de segundo orden resultantes deben ordenarse situndolas de manera
que los polos se vayan alejando de la circunferencia de radio uno, o en orden inverso.
Esta forma de emparejar los polos y los ceros se basa en la experiencia de diversos
autores. Los picos elevados de ganancia son indeseables, ya que pueden ocasionar saturacin,
amplificando adems el ruido de cuantificacin. Emparejar un polo prximo a la
fig. 2.10: conexin en cascada de un sistema de sexto orden empleando subsecciones segn la forma directa II.
Paralelo
Np
Ck z
k =0
N1
(1 c
Ak
k =1
N2
Bk 1 ek z 1
) k=1 (1 d k z 1 )(1 d k* z 1 )
+
(2.10)
Np
k =0
Ck z
Ns
(e0k + e1k z 1 )
(1 a
k =1
1
a 2k z 2
1k z
(2.11)
El esquema general para una realizacin en paralelo consta de una seccin FIR (que
puede no aparecer) y N s secciones IIR de segundo orden conectadas en paralelo.
H (z ) = H FIR (z ) + H 1 (z ) + " + H N s (z )
(2.12)
Una realizacin para un sistema de sexto orden podra ser la dibujada en la figura 2.11.
Analicemos esta realizacin junto con la cascada. Observando esta segunda conexin se
comprueba que los coeficientes {bik } van a dar directamente las posiciones de los ceros. Si
cuantificamos los coeficientes (empleando precisin finita), se podr controlar directamente la
posicin de los polos y ceros (aumentando el nmero de bits). Es posible evaluar directamente
en cada subseccin el error cometido para una precisin dada, efectuando un control directo.
Sin embargo, la realizacin en paralelo slo controlar directamente la posicin de los polos,
ya que los coeficientes {c ik } de cada bloque no representan los ceros de la funcin de sistema
total.
fig. 2.11: conexin en paralelo de un sistema de sexto orden empleando subsistemas segn la forma directa II.
(L 1) sumas.
fig. 2.12: estructura directa para una sistema FIR, con L=N.
Como se puede apreciar, la forma directa para los FIR es un caso particular de la
primera o segunda forma directa de los IIR, cuando todos los coeficientes a k son nulos. Si
hacemos uso de la propiedad de transposicin, obtenemos la forma traspuesta equivalente
(figura 2.13).
(2.13)
k =1
fig. 2.14: conexin en cascada de un sistema FIR con subestructuras de orden dos.
Para optar por una de las estructuras anteriores habr que considerar los siguientes
criterios:
a) Si se trata de un sistema IIR o FIR.
dedicados a representar la mantisa dan cuenta de la precisin mientras que los del
exponente se relacionan con el margen dinmico, solventando en este aspecto el
problema de la coma fija.
El efecto de la cuantificacin se mantiene constante para el sistema de coma flotante
durante un gran margen de valores de la cantidad que se cuantifica. Sin embargo, en los
sistemas de coma fija este tipo de distorsin depende del valor a cuantificar y slo es
comparablemente alto para un margen dinmico mucho menor. Desde el punto de vista del
coste del filtro es ms cara la circuitera que opera en coma flotante y suele conllevar un
mayor consumo elctrico que la de coma fija.
Pueden aparecer formatos sin signo y con signo, reservando el bit de mayor peso para
indicar si se trata de un nmero positivo o negativo (si se trata de nmeros con signo). Los
nmeros negativos se representan en complemento a uno o en complemento a dos.
Los efectos de usar un nmero finito de bits sern degradar la respuesta del filtro y en
algunos casos hacerla intil. El diseador debe analizar estos efectos y elegir longitudes de
palabra adecuadas (es decir, un nmero suficiente de bits) para los coeficientes del filtro, las
variables del filtro (las muestras de entrada y salida) y para las operaciones aritmticas.
Las principales fuentes de degradacin al efectuar el filtrado son:
a) Cuantificacin de las seales de entrada y reconstruccin de las de salida.
b) Cuantificacin de los coeficientes del sistema.
c) Errores aritmticos de redondeo y/o truncamiento.
d) Errores de desbordamiento, los cuales ocurren al sumar o acumular resultados
parciales en un registro de longitud limitada y cuando el resultado excede del valor
mximo representable.
La degradacin de estos errores depende de la longitud de palabra y del tipo de
aritmtica usada para desarrollar el filtro, del mtodo empleado para cuantificar los
coeficientes y las variables, y de la estructura del filtro. De los conocimientos de estos
factores el diseador puede reducir los efectos indeseados.
En la realizacin de la prctica se van a analizar los efectos producidos al cuantificar los
coeficientes de la funcin del sistema, y se va a estudiar la importancia que tiene la estructura
elegida. Se operar con datos en coma fija con truncamiento, y corrigiendo el desbordamiento
mediante saturacin.
2.4.1 Anlisis de la sensibilidad a la cuantificacin de los coeficientes de
filtros IIR
Cuando se pretende construir o simular un filtro digital, el nmero de bits que se puede
emplear para representar los coeficientes de dicho filtro va a estar limitado por la longitud de
los registros donde se desea almacenarlos. De esta forma, como los coeficientes de la
realizacin prctica no son los mismos que los del sistema ideal, la ubicacin de los polos y
de los ceros de la nueva funcin de sistema es diferente a la del filtro deseado. El resultado es
que se construye un nuevo filtro cuya respuesta en frecuencia difiere de la deseada.
A continuacin se va a realizar un estudio de la sensibilidad de los polos y ceros de la
funcin de sistema a la cuantificacin de los coeficientes del filtro, pudindose demostrar que
aquella se reduce cuando al aparecer un gran nmero de polos y ceros se emplean estructuras
en cascada y paralelo (mediante secciones bsicas de segundo orden), en lugar de las formas
directas.
Partimos de un filtro IIR cuya funcin de sistema es:
M
(z ) =
b z
k =0
1 ak z
k =1
(1 z
M
=
k
k =1
N
(1 p
k =1
z 1 )
z
(2.14)
(z ) =
k =0
1 a k z
(1 z
M
bk z k
=
k
k =1
k =1
N
(1 p
k =1
z 1 )
(2.15)
a k = a k + a k
k = 1,", N
(2.16)
bk = bk + bk
k = 0,", M
(2.17)
z k = z k + z k
(2.18)
p k = p k + p k
(2.19)
p iN k
(p
pl )
a k
(2.20)
l =1, l i
Esta expresin introduce una medida de la sensibilidad del polo i-simo a cambios en
los coeficientes " a k " .
Los trminos ( pi p l ) representan vectores en el plano z dirigidos desde los polos {pl }
hasta el polo pi . Si se tienen polos muy prximos, las longitudes pi p l
sern muy
H (z ) =
+ r 2 z 2 )
(2.21)
Los polos del filtro estn situados en re j . La realizacin empleando la forma directa
es la representada en la figura 2.15. Mediante precisin infinita se pueden tener infinitas
posiciones para los polos. Sin embargo, al cuantificar los coeficientes con un determinado
nmero de bits, las posiciones permitidas para los polos son finitas. Si emplesemos cuatro
bits, las posibles posiciones para los polos situados en el primer cuadrante seran las
representadas en la figura 2.16. En dicha figura se observa una considerable dispersin para
valores de cercanos a 0 (ocurre lo mismo en ). Esta situacin puede ser muy perjudicial
cuando se disean filtros paso bajo o paso alto, ya que se tiende a situar los polos cercanos a
z = 1 z = 1 .
Im
1
0.75
0.5
0.25
Re
0
0.25
0.5
0.75
fig. 2.16: posiciones posibles de los polos al cuantificar con cuatro bits los coeficientes de la estructura de la
figura 2.15.
Una realizacin alternativa con los mismos polos podra ser la representada en la figura
2.17. En este caso, la funcin del sistema es:
H (z ) =
(r sen( ))z 1
(1 (2r cos( ))z 1 + r 2 z 2 )
(2.22)
El sistema indicado en (2.21) presenta los mismos polos que el anterior. Sin embargo, si
se desea una realizacin real de este ltimo con la estructura de la figura 2.17, se deben
cuantificar las cantidades r cos( ) y r sen ( ) . Como estas cantidades son la parte real e
imaginaria de la posicin de los polos, stos se distribuyen uniformemente (al cuantificarlos)
dentro del crculo de radio unidad. Si se consideran cuatro bits, las posiciones posibles de los
polos en el primer cuadrante seran las indicadas en la figura 2.18. En esta figura se observa
una distribucin uniforme de las posibles posiciones. Sin embargo, el precio que se paga en
este ltimo caso es que se incrementa en los clculos el nmero de operaciones (lo cual
conlleva mayor tiempo de ejecucin). De ambas estructuras (figuras 2.15 y 2.17), la ms
conveniente ser aquella que ofrezca un conjunto mayor de puntos posibles que estn
prximos a la posicin donde se encuentran los polos de la funcin deseada.
Im
1.00
0.75
0.50
0.25
Re
0
0.25
0.50
0.75
1.00
fig. 2.18: posibles posiciones de los polos al cuantificar con cuatro bits los coeficientes de la forma acoplada.
bk x[n k ] +
k =0
ak y[n k ]
(2.23)
k =1
entrada y salida.
Multiplicadores hardware o software.
Sumadores o unidades de clculo aritmtico-lgicas.
La forma de construirlo depende de si ser un sistema que opera en tiempo real o por
lotes ("batch"). En el segundo caso se pueden hacer mediante software, empleando
ordenadores personales.
Para tiempo real se requiere circuitera ms sofisticada y veloz. Se puede hacer uso de
dispositivos hardware de propsito especfico, como los DSP's. stos cuentan con memorias
internas de tipo RAM y ROM para agilizar los clculos y los tiempos de acceso, as como
multiplicadores hardware incorporados con una longitud de palabra muy alta (16/24/...).
Adems presentan la posibilidad de operar con datos en formato entero y en coma flotante
con precisin simple y extendida. Entre sus instrucciones hay operaciones que permiten leer
de memoria, multiplicar y/o almacenar el resultado en un nico ciclo de reloj.
Los ordenadores personales pueden ser muy tiles para analizar si el sistema cumple los
requisitos de partida. Si se va a operar sobre lotes de datos, sin restricciones de tiempo, se
pueden emplear estos equipos con lenguajes de alto nivel. Para desarrollar y validar los
algoritmos se puede utilizar MATLAB, el cual es un software de clculo numrico. Presenta
excelentes capacidades grficas y funciones especficas para el tratamiento digital de la seal.
Adems, puede ir acompaado de la herramienta SIMULINK que opera con diagramas de
bloques. Posteriormente, se puede llevar a cabo la traduccin a lenguaje C o a los lenguajes
propios de los DSP's.
(r sen )z 1
1 (2r cos )z 1 + r 2 z 2
realice una representacin del mdulo de la respuesta en frecuencia y del diagrama polo-cero.
Considere precisin infinita (se simula operando directamente con el MATLAB), y los
siguientes valores
1 =
r = 0.97
2 =
3 =
32
dB`s
-20
-40
-60
-80
-100
-120
0.5
-0.5
-1
-1.5
dB`s
-20
-40
-60
-80
-100
-120
1
1.5
0.5
-0.5
-1
-1.5
r = 0.97 y
20
0
dB`s
-20
-40
-60
-80
-100
-120
1.5
0.5
-0.5
-1
-1.5
b) Repita el apartado "a" cuantificando con 8 bits los coeficientes de la funcin del
sistema.
dB`s
-20
-40
-60
-80
-100
-120
1.5
0.5
-0.5
-1
-1.5
dB`s
-20
-40
-60
-80
-100
-120
0.5
-0.5
-1
-1.5
r = 0.97 y
20
0
dB`s
-20
-40
-60
-80
-100
-120
1.5
0.5
-0.5
-1
-1.5
2.
a1n =
a2n =
a3n =
a4n =
a5n =
b0n =
b1n =
b2n =
b3n =
b4n =
b5n =
0.5
-0.5
-1
-1.5
20
0
dB`s
-20
-40
-60
-80
-100
-120
c) Repita el apartado "b" cuantificando los coeficientes del filtro con 16, 8 y 6 bits .
16 bits:
1.5
0.5
-0.5
-1
-1.5
20
0
dB`s
-20
-40
-60
-80
-100
-120
8 bits:
1.5
0.5
-0.5
-1
-1.5
20
0
dB`s
-20
-40
-60
-80
-100
-120
6 bits:
1.5
0.5
-0.5
-1
-1.5
20
0
dB`s
-20
-40
-60
-80
-100
-120
d) Explique las diferencias que observe entre lo obtenido en los apartados "b" (filtro con
los coeficientes ideales) y "c" (filtro con los coeficientes cuantificados).
Ns
b0 k + b1k z 1 + b2 k z 2
k =1
k =1
1 a1k z 1 a 2 k z 2
H (z ) = H k (z ) =
Esta descomposicin no es nica ya que, por un lado, los polos y los ceros se pueden
emparejar de diversas maneras y, por otro, los subsistemas se pueden ordenar de distintas
formas. Tericamente la funcin global es la misma, pero en la prctica (debido a la
aritmtica finita) existen grandes diferencias entre unas y otras.
Con los polos y los ceros del filtro ideal se realiza un emparejamiento siguiendo los
criterios enunciados en los fundamentos tericos. Para ello, debe emplear una funcin que
devuelva dos matrices: bik, que contiene los coeficientes bik (en la fila "k" tenemos los
coeficientes de la subseccin "k"), y aik, que contiene los coeficientes aik.
En segundo lugar, se deben normalizar las matrices bik y aik con respecto al mximo
valor que presenten. Hay que tener en cuenta que ambas matrices deben dividirse por el
mismo valor.
En tercer lugar, se cuantifican con 16, 8 y 6 bits los coeficientes de las matrices
normalizadas.
Por ltimo, se pide representar el mdulo de la respuesta en frecuencia del filtro total,
que es asociacin en cascada de tres filtros.
16 bits:
20
0
dB`s
-20
-40
-60
-80
-100
-120
8 bits:
20
0
dB`s
-20
-40
-60
-80
-100
-120
6 bits:
20
0
dB`s
-20
-40
-60
-80
-100
-120
g) Explique las diferencias que observe entre lo obtenido en los apartados "c" y "f".