6.- anÁlisis de efectos de la precisiÓn finita en filtros...
TRANSCRIPT
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.1
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
6.- ANÁLISIS DE EFECTOS DE LA PRECISIÓN FINITA EN FILTROS
DIGITALES.
6.1.- INTRODUCCIÓN.
Los filtros considerados hasta ahora eran “filtros discretos” pero no filtros digitales, en el
sentido que las señales de entrada, estaban cuantizadas en tiempo pero no en amplitud y los
coeficientes no estaban cuantizados. Estos sistemas, al ser implementados en hardware o
software, deben cuantizar dichos valores a los permitidos por la representación numérica
utilizada. Este proceso transforma al filtro en un sistema NO LINEAL. En general estos
efectos son difíciles de analizar, si bien, si su contribución es pequeña comparada con las
señales, pueden ser considerados como perturbaciones aditivas a un sistema lineal, lo que
permite la utilización de técnicas estadísticas para evaluar sus efectos. Esto permite obtener
estimadores que posteriormente se compararán con los resultados experimentales. Las
fuentes de error son las siguientes:
• Conversión AD
• Cuantización de los coeficientes del filtro.
• Cuantización de las operaciones aritméticas.
• Presencia de Ciclos Límite
Las representaciones numéricas de los datos pueden ser en coma fija o en coma flotante, en
cualquier caso se realiza una representación con un número finito de bits, lo cual se traduce
en que se produzcan efectos no deseados. Así, por ejemplo, el producto de dos números
representados con b bits produce un resultado de longitud 2b que posteriormente deberá ser
cuantizado para su almacenamiento en un registro de b bits. Además, en aritmética de coma
fija, al sumar dos magnitudes de b bits se puede obtener un resultado que exceda el valor
máximo representado, produciéndose un error. Es decir, el análisis de los efectos de la
cuantización en un filtro digital depende de varios parámetros:
• Formato de los datos (coma fija, coma flotante).
• Tipo de representación numérica utilizada (signo magnitud, complemento 2, etc.)
• Tipo de cuantización (redondeo, truncamiento)
• Estructura utilizada para la implementación del filtro.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.2
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Analicemos cada uno de estos parámetros por separado.
6.2.- Representación numérica en coma fija (Punto fijo).
En general un número en punto fijo puede representarse como:
( ) ( )10,...,,,,..., 101 −≤≤== ∑−=
−−− rbrbbbbbbx i
B
Ai
i
irBA
A: es el número de dígitos para la parte entera
B: es el número de dígitos para la parte fraccionaria.
r: es la base
r=2�binario, bi= 0,1
r=10 � decimal, bi= 0,1,…,9
r=16 � hexadecimal bi= 0,1,…,9,A,B,C,D,E,F
Nos vamos a centrar en la representación binaria r=2, ya que es la utilizada por los
dispositivos hardware. En este caso los dígitos se denominan bits (binary digit).
(LSB) tivo significamenos bitb
(MSB) tivo significamás bitb
B
A
:
:−
Si
2-0,...,1 :Intervalo .fraccional Formato10
10,...,2 :Intervalo signo.sin entero Formato01n-
n
→−==
−→=−=
nBA
BnA
En general, un número con parte entera y parte fraccional se representará asignado un
número de bits para cada parte. En lo sucesivo consideraremos el formato fraccional
binario.
Los números fraccionales binarios positivos tienen un formato definido por:
02,....01
1 >== ∑=
− xbbbxB
i
i
iB
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.3
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
El MSB=0 indica signo positivo.
Para los números negativos hay tres formatos de representación:
Signo Magnitud: el MSB se pone a 1 para indicar signo negativo.
0,....1 1 ≤= xbbx BSM
Complemento a 1.
0,....1 11 ≤= xbbx BC
1b es el complemento a 1 del bit (cambiar unos por ceros y viceversa) o alternativamente se
puede calcular como xx B
C −−= −221
Complemento a 2. Se obtiene a partir del complemento a 1 sumándole un LSB
0,....1 12 ≤+= xLSBbbx B
Una definición alternativa es: xxC −= 22 .
Observamos que dada una secuencia de bits, el número que debemos interpretar depende de
la representación utilizada. De las indicadas la más usual es el complemento a 2.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.4
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Veamos a continuación algunas definiciones:
Rango dinámico: es la diferencia entre el número más grande y el más pequeño en una
determinada representación. minmax xxR −=
Precisión o Resolución: Mínima distancia entre dos número consecutivos representados
dentro del rango dinámico. 12minmax
−
−=∆
B
xx, B: número total de bits
Ejemplo:
Si tenemos B+1 bits (B bits significativos más un bit de signo) y empleamos
representaciones fraccionarias en C2 el intervalo de números representado será:
Bx −−≤≤− 211
Luego BBR −− =∆−= 222
La resolución en la representación en coma fija es constante.
Desbordamiento: es el efecto producido cuando tenemos un número que está fuera del
rango dinámico para una representación específica. Puede ser por exceso (overflow) o por
defecto (underflow).
La denominación de punto fijo se debe a que el punto decimal está siempre en la misma
posición, una representación alternativa es la representación en punto flotante que veremos
a continuación.
En la siguiente tabla se muestra la representación binaria fraccional con 3 bits significativos
más uno de signo, en los diferentes formatos de representación vistos anteriormente.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.5
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Tratamiento Digital de Señales. J.G. Proakis
La figura siguiente muestra los valores posibles en una representación de 3 bits en
complemento a 2 (a) se corresponde con una representación entera y (b) con una fraccional.
Las secuencias de bits son idénticas, únicamente cambia la interpretación.
Extraído de: Tratamiento Digital de Señales. J.G. Proakis
6.3.- Representación numérica en coma flotante.
La representación en coma flotante es de la forma:
exponente:
15.0mantisa:2
E
MMMx E
<≤⋅=
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.6
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
El exponente puede cambiar para mantener la mantisa en el intervalo permitido (COMA
FLOTANTE)
Para la mantisa y el exponente se puede utilizar cualquiera de las representaciones vistas
(signo magnitud, complemento-1, complemento-2).
Existe un estándar para la representación numérica en coma flotante (IEEE 754). Para
precisión simple1 (32 bits), los bits están distribuidos de la siguiente manera:
s: signo (1 bit)
F: mantisa (23 bits)
E: exponente (8 bits). El exponente también incluye un bit de signo.
La siguiente tabla muestra los valores máximo y mínimo en valor absoluto que podemos
representar con aritmética de coma flotante
Signo M (23 bits) Signo (E) E(7bits
Mínimo 0 1000…..0 1 1111111 38127 103.025.0 −− ⋅≈⋅
Máximo 1 1111…...1 0 1111111 3812723 107.12)21( ⋅≈⋅− −
Si consideramos aritmética de punto fijo de 32 bits, con un bit de signo tenemos, en valores
absolutos
1 Existe un formato con precisión doble de 64 bits con M=52, E=11 y un bit de signo.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.7
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Signo 31 bits
Mínimo - 00000….1 1031 106.42 −− ⋅≈
Máximo - 11111….1 932 106.412 ⋅≈−
La representación en coma flotante tiene un rango dinámico mayor, que consigue mediante
una resolución variable. La resolución es fina para números pequeños y gruesa para
números grandes. Para la representación en coma fija la precisión es constante. Si tenemos
en cuenta, solo la parte significativa; mantisa, para un mismo número de bits, la precisión
en coma fija es mayor que en coma flotante.
Existen algunas combinaciones determinadas de E y M que sirven para almacenar
resultados “especiales” de las operaciones:
0.M es una representación fraccionaria y 1.M es una representación mixta (tiene parte
entera y parte fraccionaria) con 1 bit entero.
En la siguiente tabla mostramos el intervalo de representación y precisión en la
representación en coma flotante con precisión simple y doble
Si E=255 y M≠0 X no es un número Si E=255 y M=0 X=(-1)s∞ Si 0<E<255 X==(-1)s 2E-127(1.M) Si E=0 y M≠0 X==(-1)s 2-126 (0.M) Si E=0 y M=0 X==(-1)s 0
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.8
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
A continuación mostramos gráficamente la resolución en una representación en coma fija
fraccional de 8 bits significativos más uno de signo y en una representación en coma
flotante con 4 bits para la mantisa y 4 para el exponente más un bit de signo adicional para
la mantisa. Se pone de manifiesto como la precisión en coma fija es constante mientras que
en coma flotante ésta varía con cada modificación del valor del exponente, de manera que
ésta se va duplicando; es decir, la precisión para números pequeños es muy buena y
empeora para números grandes.
0 0.2 0.4 0.6 0.8 10
0.02
0.04
0.06
0.08
Re
so
lució
n
x
Coma flotante M=4, E=4 + bit signo en mantisa
0 0.2 0.4 0.6 0.8 10
0.02
0.04
0.06
0.08
0.1
Re
so
lució
n
x
Coma fija b=8+1
6.4.- Cuantización en la conversión AD.
Sabemos que la conversión analógica digital es un proceso que permite transformar una
señal continua en tiempo y amplitud en una señal que es discreta en tiempo y amplitud. La
figura siguiente muestra todo el proceso.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.9
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
La muestra digital final es la representación binaria de la señal cuantizada producida por un
muestreador ideal. Si la salida se representa con b bits, incluyendo el bit de signo, el
número de niveles digitales posibles es b2 .
El proceso de cuantización puede realizarse por redondeo (asignación al nivel más
próximo) o por truncamiento (asignación al nivel inmediatamente inferior). La función de
transferencia, para un conversor de 3 bits por redondeo se muestra en la siguiente gráfica.
Extraído de: Tratamiento Digital de Señales. J.G. Proakis
Si el conversor funciona por truncamiento la gráfica es idéntica pero con un desplazamiento
2
∆a la derecha, con b−=∆ 2 .
El valor equivalente para la muestra cuantizada, en una representación binaria fraccional en
complemento a 2, para la muestra ][ˆ nx , es 1][ˆ1 <≤− nxq , que está relacionada con la
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.10
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
muestra cuantizada como FS
eqR
nxnx
][ˆ2][ˆ = , siendo RFS el intervalo de entrada del AD. Es
decir, hemos realizado un escalado por 2/FSR para obtener una entrada en el intervalo ±1.
La diferencia entre la señal original y la cuantizada se denomina error de cuantización.
Los errores cometidos cuando se utiliza redondeo o truncamiento con b bits son:
b
b
q
ne
ne
nxnxne
−
−
=∆≤<∆−
=∆∆
≤<∆
−
−=
20][ toTruncamien
22
][2
Redondeo
óncuantizaci deError )()(ˆ)(
Si la señal de entrada excede el rango del conversor, se produce un error en la conversión
que aumenta linealmente con la señal de entrada, es lo que se denomina ruido de
saturación o sobrecarga.
El proceso de conversión AD es un proceso no lineal, y no invertible en el que siempre hay
una pérdida de información. Este proceso se modeliza como:
Extraído de: Digital Signal Processing. A computer-based approach. S. K, Mitra.
Siendo x(n) la señal sin cuantizar y e(n) una variable aleatoria con las siguientes
características:
1. La secuencia de error es una versión muestreada de un proceso de ruido blanco
estacionario en sentido amplio (wide-sense stationary) en el que cada muestra esta
uniformemente distribuida en el intervalo determinado por el error de cuantización.
2. La secuencia de error no está correlacionada con la secuencia de entrada
correspondiente.
3. La secuencia de entrada es una secuencia procedente de un proceso aleatorio
estacionario.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.11
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Estas condiciones se verifican si las señales de entrada tienen una amplitud grande,
comparada con el escalón de cuantización, ya que en este caso, la variación de la amplitud
se puede considerar aleatoria.
Cuando se utiliza una representación en complemento a 1 o signo-magnitud con
truncamiento, la señal de error sí está correlacionado con la señal de entrada ya que el error
obtenido es siempre de signo contrario al signo de la señal de entrada, por esta razón una
representación en complemento a 2 con cuantización por truncamiento o una cuantización
por redondeo es preferible.
Las funciones densidad de probabilidad del error por redondeo y truncamiento (en una
representación en complemento a dos) son las siguientes
Extraído de: Digital Signal Processing. A computer-based approach. S. K, Mitra.
A partir de la funciones densidad de probabilidad podemos calcular valores medios y
varianzas:
{ }
{ } { }( ) ( )22222 )()(
)(
∫∫
∫⋅⋅−⋅⋅=−=
⋅⋅==
deepedeepeeEeE
deepeeEe
eσ
Obtenemos:
12
2e:toTruncamien
12
0e:Redondeo 2
2t
t2
2r
r
∆=
∆−=
∆=
=
σσ
El efecto de la conversión AD en la relación señal ruido se mide con la relación señal ruido
de cuantización definido como:
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.12
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
ruidoEnergia
señalEnergiaSNRAD log10 ⋅=
si 2σ=ruidoEnergia para un conversor de b bits, ( b−=∆ 2 ) obtenemos:
( )( )dBbSNR xAD 02.68.10log10 2 ++⋅= σ
Cada bit adicional proporciona un aumento teórico de 6 bits en la SNR. El resultado
obtenido depende de las características de la señal de entrada. Para un conversor bipolar
con rango de entrada 2A y b bits, con una entrada sinusoidal de amplitud A, la expresión
obtenida es:
( )dBbA
A
ruidoEnergia
señalEnergiaSNR
b
AD 76.103.6
12
1
2
22log10log102
2
+=
⋅
=⋅=
El ruido generado en la conversión AD, con varianza 2ADσ , al atravesar el filtro genera un
ruido a la salida cuya varianza viene dada por:
∑∞
=
=0
222 )(k
ADoAD khσσ
6.5.- Cuantización de las operaciones aritméticas:errores de redondeo y
truncamiento.
Durante la realización de operaciones aritméticas, por ejemplo al multiplicar 2 números
representados con b bits, si el resultado de 2b bits queremos almacenarlo en el mismo
formato deberemos realizar una reducción de 2b � b bits. Esta reducción implica una
cuantización, que puede realizarse por redondeo o truncamiento.
Cuantización de operaciones: ( ) 011...10110.001...10110.00
bbxQx
bb
<==4847648476
Dado que los número positivos tienen la misma representación en los tres tipos de
numeración analizados, únicamente estudiaremos por separado los números negativos. En
la siguiente tabla se muestra los errores de redondeo y truncamiento en cada uno de los
casos. Si bb >>>0 el término 02 b− puede despreciarse.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.13
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
−
≤≤
−
−→
−≤≤→
≤≤
−→
−=
→
2
0b-
2b-2
2
0b-
2b-2
ciones)representa las (Todas Redondeo
0
b-2b-20 Mag -Signo Negat.y 1 Comp.en Negat.
00b-
2b-2- 2 Comp.en Negat.y Positivos
toTruncamien
)(0
FIJACOMA
rE
tE
tE
xxQE
bb
Ejemplos2:
0625.075.0)(01.1)(01010.16875.0:2
0625.075.0)(11.0)(10110.06875.0:2
0625.075.0)(11.1)(10110.16875.0:
0625.075.0)(11.0)(10110.06875.0:
0625.075.0)(01.1)(01010.16875.0:2
1875.050.0)(10.0)(10110.06875.0:2
1875.050.0)(10.1)(10110.16875.0:
1875.050.0)(10.0)(10110.06875.0:
2.
2.
2.
2.
2.
2.
2.
2.
−=−== →=−=
+=== →=+=
−=−== →=−=
+=== →=+=
−=−== →=−=
−=== →=+=
+=== →=−=
−=== →=+=
rdecimalbin
bitsared
bindecimal
rdecimalbin
bitsared
bindecimal
rdecimalbin
bitsared
bindecimal
rdecimalbin
bitsared
bindecimal
tdecimalbin
bitsatrunc
bindecimal
tdecimalbin
bitsatrunc
bindecimal
tdecimalbin
bitsatrunc
bindecimal
tdecimalbin
bitsatrunc
bindecimal
ExQxQxxC
ExQxQxxC
ExQxQxxSM
ExQxQxxSM
ExQxQxxC
ExQxQxxC
ExQxQxxSM
ExQxQxxSM
Cuando se utiliza aritmética de coma flotante se cuantiza únicamente la mantisa M. Dado
que la resolución en coma flotante no es uniforme sino de depende del número que se
cuantifica, se define un error relativo
M
MM
x
xxe
−=
−=
)(Q)(Q
≤<−→
≤<⋅−→<⋅<≤
>≤<⋅−→
⋅=
∞=
→
−−
−
−
−
22 ciones)representa las (Todas Redondeo
022 Mag -Signoy 1 Comp. 0,220
0,022 2 Comp.
toTruncamien
bits) (
2
0
FLOTANTE.COMA
0
b
r
b
t
b
b
t
t
b
E
e
e
xe
xe
bM
Mx
b
bb
En lo sucesivo vamos a considerar únicamente sistemas de coma fija.
2 La interpretación de un número negativo, con representación fraccional, en complemento a 2 en decimal es
)2(2 xxc −−= . Ej 75.0))22(2(01.1 202 −=+−−== −
decc xx
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.14
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
En la siguiente figura se muestra las gráficas de las funciones densidad de probabilidad de
los errores por redondeo y truncamiento, utilizando representaciones en complemento a 2 y
signo magnitud.
Para los casos (a) y (b) ya hemos calculado los valores medios y las varianzas. Para el caso
(c) obtenemos:
3
0e:magnitud)-to(signoTruncamien 2
2t
t
∆=
=
σ
Si comparamos con los valores obtenidos para cuantización por redondeo observamos que
la varianza (error) es 4 veces superior. Además el error de truncamiento está correlacionado
con la señal de entrada ya que si 00 <> tex y 00 >< tex ; es decir, no se verifica uno
de los requisitos que habíamos impuesto originalmente. Por otra parte, una ventaja de esta
representación es que no aparece un efecto que veremos más adelante como son los ciclos
límite.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.15
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
6.6.- Cuantización de los coeficientes de un filtro digital.
La función de transferencia )(zH de un filtro digital obtenidos al cuantizar los coeficientes,
es diferente de la función de transferencia del filtro deseado )(zH . El principal efecto es la
modificación de la localización de los ceros y los polos del filtro original. Pudiendo incluso
hacer que un filtro estable dé lugar a un filtro inestable. Además se modifica la respuesta en
frecuencia de filtro con lo que el nuevo sistema puede no cumplir las especificaciones de
diseño del filtro original. Veámoslo en las siguientes gráficas.
Se ha diseñado un filtro elíptico, con coef. cuantizados por redondeo, con las instrucciones:
Rp=1;Rs=40;Wp=0.4;Ws=0.5; [N, Wn] = ellipord(Wp, Ws, Rp, Rs); [b,a]=ellip(N,Rp,Rs,Wn);
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.16
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
0 0.5 1−100
−50
0
50|H
(ω)|
ω/π
Redondeo a 4 bits
0 0.5 1−4
−2
0
2
4
|Φ(ω
)|(r
ad)
ω/π
0 0.2 0.4−2
−1
0
1
2
|H(ω
)|
ω/π
Detalle de banda pasante
CuantizadaOriginal
0.6 0.8 1−60
−50
−40
−30Detalle de banda atenuada
|H(ω
)|
ω/π
−1 −0.5 0 0.5 1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
12
2
Parte Real
Pa
rte
Im
ag
ina
ria
Redondeo a 4 bits
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.17
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
0 0.5 1−100
−50
0
50
|H(ω
)|
ω/π
Redondeo a 16 bits
0 0.5 1−4
−2
0
2
4
|Φ(ω
)|(r
ad
)
ω/π
0 0.2 0.4−2
−1
0
1
2
|H(ω
)|
ω/π
Detalle de banda pasante
CuantizadaOriginal
0.6 0.8 1−60
−50
−40
−30Detalle de banda atenuada
|H(ω
)|
ω/π
−1 −0.5 0 0.5 1
−1
−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Parte Real
Part
e Im
agin
aria
Redondeo a 16 bits
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.18
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Ahora repetimos el proceso para un filtro FIR de similares características, cuantizando los
coeficientes por redondeo. Se ha utilizado el siguiente código:
[n,fo,mo,w]=remezord([0.4 0.5],[1 0],[0.01 0.01]);b= remez(n,fo,mo,w);
0 0.5 1−100
−50
0
50
|H(ω
)|
ω/π
Redondeo a 4 bits
0 0.5 1−4
−2
0
2
4
|Φ(ω
)|(r
ad)
ω/π
0 0.2 0.4−2
−1
0
1
2
ω/π|H
(ω)|
Detalle de banda pasante
CuantizadaOriginal
0.6 0.8 1−60
−50
−40
−30Detalle de banda atenuada
|H(ω
)|
ω/π
−3 −2 −1 0 1−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
24
Parte Real
Pa
rte
Im
ag
ina
ria
Redondeo a 4 bits
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.19
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
0 0.5 1−100
−50
0
50|H
(ω)|
(rad)
ω/π
Redondeo a 16 bits
0 0.5 1−4
−2
0
2
4
|Φ(ω
)|(r
ad)
ω/π
0 0.2 0.4−2
−1
0
1
2
ω/π
|H(ω
)|(r
ad)
Detalle de banda pasante
CuantizadaOriginal
0.6 0.8 1−60
−50
−40
−30Detalle de banda atenuada
|H(ω
)|(r
ad)
ω/π
−3 −2 −1 0 1
−1.5
−1
−0.5
0
0.5
1
1.5
Parte Real
Pa
rte
Im
ag
ina
ria
Redondeo a 16 bits
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.20
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
6.6.1.- Sensibilidad frente a la cuantización de los polos.
En este apartado vamos a analizar las modificaciones que experimentan los polos como
consecuencia de cuantizar los coeficientes del filtro. Dado un filtro IIR
∑
∑
=
−
=
−
+=
N
k
k
k
M
k
k
k
za
zb
zH
1
0
1)(
Consideremos que al cuantizar los coeficientes tenemos:
kkk
kkk
aaa
bbb
∆+=
∆+= siendo kb∆ y ka∆ las perturbaciones (errores) de cuantización.
La nueva función de transferencia del filtro será:
∑
∑
=
−
=
−
+=
N
k
k
k
M
k
k
k
za
zb
zH
1
0
1)(
Analicemos los polos. Sea ( )∏∑=
−
=
− −=+=N
k
k
N
k
k
k zpzazD1
1
1
11)( y tras la cuantización
( ) kkk
N
k
k pppzpzD ∆+=−= ∏=
−
1
11)(
Vamos a relacionar kp∆ con ka∆ , para ello expresamos que la variación total
experimentada por un polo es igual a la suma de las variaciones de dicho polo respecto de
cada uno de los coeficientes del filtro y lo expresamos como:
k
N
k k
ii a
a
pp ∆
∂
∂=∆ ∑
=1
Expresión que podemos calcular a partir de D(z) aplicando la regla de la cadena,
i
i
iii
pz
pzk
k
i
pzkpzpzk
z
zD
a
zD
a
p
a
z
z
zD
a
zD
=
=
===
∂
∂
∂
∂
=∂
∂⇒
∂
∂
∂
∂=
∂
∂)(
)(
)()(
Si calculamos el numerador y el denominador de esta última expresión tenemos, que de la
definición de D(z) obtenemos,
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.21
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
k
ipz
k
pzk
pza
zD
i
i
−
=
−
=
==∂
∂ )(
y
( ) ( ) =−=
−
∂
∂=
−
∂
∂=
∂
∂
=≠=
−
=====
−
=∏∑∏∏
i
iii
pz
N
kjj
j
N
k
k
pz
N
k
k
pz
N
k
k
pz
zpz
p
z
pz
zzp
zz
zD
1
1
12
11
1 11)(
∏∑≠==
−=
N
kjj i
jiN
k i
k
p
pp
p
p
112
Solo cuando k=i ninguno de los términos entre paréntesis es cero, por tanto el productorio
no se anula. Luego el sumatorio sólo tiene un término.
( ) ( )∏∏≠=
≠=
−=
−=−=∂
∂ N
ijj
jiN
i
N
ijj
jiN
ii
i
pz
ppp
pppp
p
z
zD
i11
12
1)(
Luego la expresión buscada es:
( )k
N
kN
ijj
ji
kN
ii a
pp
pp ∆
−=∆ ∑
∏=
≠=
−
1
1
Esta expresión proporciona una medida de la sensibilidad del polo i-ésimo a cambios en el
coeficiente ka .
A partir de esta expresión obtenemos las siguientes conclusiones:
• Como sensible menos ecoeficient el es
sensible más ecoeficient el es ,1
0
0
a
appp
N
i
N
ii ⇒<<<
• Cuanto mayor sea el orden más sensibilidad.
• La sensibilidad aumenta si los polos están muy cercanos (como el los filtros pasa
banda estrechos), ya que el término ( )ji pp − es la distancia entre el polo
considerado y los restantes. Utilizaremos descomposiciones en cascada para
disminuir el orden. Idealmente de orden 1, pero para evitar aritmética compleja
agruparemos en etapas de 2º orden, además los polos complejos conjugados están
suficientemente alejados entre sí, lo que disminuye la sensibilidad.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.22
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
6.6.2.- Sensibilidad frente a la cuantización de los ceros en filtros FIR.
Un estudio análogo al realizado para los polos se puede llevar a cabo para los ceros, que
nos permitiría obtener una expresión análoga para la sensibilidad de los ceros en una
implementación directa. La principal diferencia es que los filtros FIR, en su mayoría, se
diseñan para tener fase lineal, como consecuencia kMk bb −−±= 1 . Luego la cuantización de
los coeficientes en forma directa sigue preservando la linealidad, que no ocurre si
descomponemos en etapas de 2º orden (sí se cumple para etapas de cuarto orden agrupando
un par de ceros complejos conjugados y sus recíprocos). Es decir, la cuantización
únicamente afecta a la respuesta en frecuencia en módulo. Por otra parte, al mantener la
linealidad, los ceros que originalmente se encuentran sobre la circunferencia unidad, al
cuantizar seguirán en la misma posición (de lo contrario se perdería la linealidad de fase).
Además los ceros situados sobre la circunferencia unidad se verán afectados por igual al
cuantizar los coeficientes kb , dado que el término3 11 =−− kM
iz si 1=iz . Por estas razones la
estructura directa sí se prefiere para filtros FIR.
En las siguientes figuras mostramos las gráficas obtenidas para una descomposición en
cascada con etapas de segundo orden del filtro FIR descrito en el apartado 6.6.
3 La expresión obtenida es la misma que para los polos
( )k
M
kM
kjj
ji
kM
ii b
zz
zz ∆
−=∆ ∑
∏
−
=−
≠=
−−1
11
1
1
con ∑−
=
=1
0
)(M
k
k
k zbzH
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.23
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
0.2 0.4 0.6 0.8
−60
−40
−20
0
|H(ω
)|
ω/π
Redondeo a 4 bits
0 0.5 1−4
−2
0
2
4
Φ(ω
)
ω/π
0 0.2 0.4−2
−1
0
1
2
ω/π
|H(ω
)|
Detalle de banda pasante
Cuantizada SOSCuantizada DirectaOriginal
0.6 0.8 1−50
−40
−30
−20Detalle de banda atenuada
|H(ω
)|
ω/π
−3 −2 −1 0 1
−4
−3
−2
−1
0
1
2
3
4
24 23 39
Parte Real
Part
e Im
agin
aria
Redondeo a 4 bits
0 0.5 115
16
17
18
19
20
21
22
23
24
25
n
Reta
rdo d
e g
rupo
Redondeo a 4 bits
Cuantizada SOSCuantizada DirectaOriginal
6.6.3.- Cuantificación de las formas en paralelo y en cascada.
Hemos indicado que un filtro IIR de orden superior a 2 se debe implementar como una
combinación de secciones de segundo orden, pero no hemos indicado si se debe emplear
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.24
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
una configuración en cascada o en paralelo. Es decir, hemos de elegir
entre ∏=
−−
−−
++
++=
K
k kk
kkk
zaza
zbzbbzH
12
21
1
22
110
1)( o ∑
=−−
−
++
+=
K
k kk
kk
zaza
zcczH
12
21
1
110
1)( .
Si el filtro se implementa como una descomposición en cascada de términos de primer y
segundo orden, la relación entre los ceros y los coeficientes cuantizados es directa ya que la
cuantizacion de los coeficientes sólo afecta a 2 ceros complejos conjugados (los de esa
etapa), sin embargo cuando se opta por una descomposición en paralelo, en el cálculo de
los coeficientes 10 , kk cc , intervienen todos los coeficientes kb ; es decir, la cuantización de
10 , kk cc afectará a TODOS LOS CEROS.
Esto hace que sea difícil evaluar la perturbación introducida en la posición de los ceros,
haciendo que la sensibilidad aumente. Además, si el filtro tiene ceros sobre la
circunferencia unidad, es probable que tras la descomposición en paralelo dejen de estarlo.
Esto no ocurre cuando tenemos ceros sobre la circunferencia unidad en una descomposición
en cascada ya que el coeficiene kb2 será la unidad por lo que no se verán afectados por la
cuantización; los ceros podrán experimentar ligeras modificaciones pero siempre se
mantendrán sobre la circunferencia unidad.
En el caso que sea necesario una implementación en paralelo se puede optar por una
representación en coma flotante.
La forma en cascada es la más robusta frente a la cuantización de los coeficientes y debe
ser la elección ante una implementación en coma fija.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.25
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
0 0.2 0.4 0.6 0.8 1−100
−80
−60
−40
−20
0
20Cuantización a 4 bits
ω/π
|H(ω
)|OriginalC.DirectaC. CascadaC. Paralelo
−1.5 −1 −0.5 0 0.5 1 1.5
−1
−0.5
0
0.5
1
Parte Real
Part
e Im
agin
aria
OriC. CascadaQ Paralelo
6.6.4.- Importancia de la estructura frente a la cuantización.
Del apartado anterior hemos concluido que para un filtro IIR la forma más adecuada de
implementación es mediante etapas en cascada de 1er y 2º orden, pero no hemos
especificado nada a cerca del tipo de estructura empleada para cada etapa.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.26
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Si consideramos un sistema de primer orden, 11
1)(
−−=
azzH y cuantizamos con b bits la
posición del polo bLa −=∆∆= 2 ; es decir, las posiciones del polo están equiespaciadas a
intervalos ∆ en el eje real.
Para un sistema de 2º orden:
θθjerz
ra
ra
zazazH ±
−−⋅=
=
−=
++= en polos
)cos(2
1
1)(
22
1
22
11
si cuantizamos la forma directa
y(n)x(n)
z-1
2rcos(q)
z-1
-r2
Al cuantizar los coeficientes a1 y a2 estamos cuantizando la parte real de los polos y la
distancia de los polos al origen r2. Si b=4 (3 bits fraccionales más uno de signo) las posibles
localizaciones de los polos son las mostradas en la siguiente figura. Observamos que en el
eje X la distribución de la cuantización es uniforme ya que el coeficiente coincide con la
parte real, pero el eje Y no estamos cuantizando la parte imaginaria sino r2.
enterosnúmerosLLLrLa
La
bb
b
21
222
11,
22
2
=→=
=
−−
−
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.27
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
Las posiciones válidas para los coeficientes cuantizados son las intersecciones de las líneas
verticales y las circunferencias. Observamos que la malla es muy poco densa en 1±=z
comparado con jz ±= , luego:
Si se diseñan filtros muy estrechos, pasa-baja o pasa-alta, cuyos polos están en 1±=z , esta
estructura será muy sensible a la cuantización por lo que será necesario utilizar mayor
precisión (representar con mayor número de bits) o bien BUSCAR OTRA ESTRUCTURA.
Este efecto se produce también cuando se utiliza la técnica de oversampling; es decir,
muestrear a una frecuencia muy superior a la dictada por el teorema de muestreo, ya que los
coeficientes de los filtros toman valores tales que los polos se aproximan a 1±=z ,
incrementándose la sensibilidad.
Una alternativa es utilizar otra estructura para la implementación del sistema de segundo
orden como es la FORMA ACOPLADA O NORMAL que mostramos en la figura
siguiente.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.28
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
Consideremos:
0)(
)()(
)()(
2
2
1
=
=
=
nx
nyns
nxnx
. También podemos considerar como salida )(1 ns (No afecta a los polos.)
Las ecuaciones del sistema son:
( )( )
[ ] [ ][ ]
( ) 222
21
11
222
11
21
1
211
11
1121
2111
1
21)(
)(1)(
)()(1)(
)()()(
)()()()(
−−
−
−−
−−
−
−
++−
−=
−=−→
+=−→
+−=
++=
zaaza
zazH
zSzazazY
zXzYazzazS
zYazSazzY
zXzYazSazzS
Si ( ) ( )θθ sin,cos 21 rara == , los polos de la función de transferencia obtenida coinciden
con el sistema de 2º orden de partida salvo que en esta estructura los coeficientes a1 y a2
son la parte real e imaginaria de los polos por lo que su cuantización da lugar a una rejilla
rectangular como se muestra en la siguiente figura.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.29
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
VENTAJAS � CUANTIFICACION UNIFORME
INCONVENIENTE � AUMENTA EL NÚMERO DE PRODUCTOS 2 � 4
Esta estructura es adecuada para el diseño de filtros pasa-baja y pasa-alta estrechos, ya que
la densidad de puntos en 1±=z es mayor respecto a la estructura directa.
Si por el contrario hemos de implementar filtros pasa-banda o elimina-banda estrechos la
estructura directa es más adecuada ya que los polos se encuentran en la zona jz ±= donde
la densidad de puntos es mayor.
6.7.- Escalado de los coeficientes para prevenir desbordamiento.
Cuando se utiliza aritmética binaria fraccional de complemento a 2, la suma de dos
números grandes del mismo signo puede originar un valor que exceda del máximo
representable, dando lugar a un resultado de distinto signo. En la siguiente figura se
muestra la característica funcional de la suma en complemento a 2.
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.30
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
En un filtro recursivo, el desbordamiento producido en una suma, puede volver a
producirse debido a la realimentación, o bien puede dar lugar a oscilaciones
automantenidas difíciles de detener sino se pone a cero el sistema.
En los filtros FIR, dado que no existe realimentación, y que la salida es una suma
ponderada de las entradas retardadas, la utilización de aritmética en complemento a 2 tiene
la ventaja de que la suma de términos cuyo resultado final no produce desbordamiento,
proporcionará un resultado correcto aunque en alguna de las sumas intermedias se
produzca.
El desbordamiento se produce a la salida de los sumadores, ya que si las entradas y los
coeficientes se representan en formato fraccional binario, éstos se encontrarán en el
intervalo 11 <≤− x por lo que los productos no producirán desbordamiento pero sí pueden
producirlo las sumas.
Una forma de prevenir el desbordamiento es ESCALANDO las entradas de los sumadores
por un factor adecuado para mantener su salida dentro de los límites permitidos por la
representación. Si se realiza un escalado de la señal de entrada por un factor S (S<1), de
acuerdo con la expresión ( )( )dBbSNR xAD 02.68.10log10 2 ++= σ , la varianza de la señal
escalada será 22xS σ y dado que S<1 producirá un disminución de la SNR. Es decir
deberemos elegir un factor de escalado que suponga un compromiso entre la reducción de
la SNR y que evite el desbordamiento.
Los métodos más habituales para el cálculo de los coeficientes de escalado son los que se
indican a continuación. En todos los casos )(kf es la respuesta impulsional del filtro
)(zF . Siendo )(zF la función de transferencia desde la entrada hasta la salida del nodo
sumador considerado.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.31
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
( )
12
21
0
22
01
max:
)(:
)(:
LLL
FSL
kfSL
kfSL
k
k
<<
=
=
=
∞
∞
∞
=
∞
=
∑
∑
ω
L1: es la condición más restrictiva y asegura que no se va a producir desbordamiento a la
salida, si bien en muchas ocasiones proporciona un escalado excesivo, disminuyendo la
SNR.
L2: en este caso se imponen restricciones sobre la energía de la entrada y la función de
transferencia. Para algunas estructuras es posible obtener expresiones compactas ya que
∫∑ −−∞
=
==C
k
dzzzFzFj
kfs 11
0
2 )()(2
1)(
π
(Se trata de una integral de contorno 1=z que se resuelve mediante el Teorema de los
Residuos)
(Ver Mitra-2001)
∞L : )(ωF es la respuesta en frecuencia desde la entrada hasta la salida del sumador. Este
factor de escalado es el valor de pico de la respuesta en frecuencia. Asegura que no se va a
producir desbordamiento cuando la entrada es una sinusoide pura.
Los factores de escalado verifican:
12 LLL ≤≤ ∞
6.7.1.- Escalado de formas de 2º orden.
En la siguiente figura mostramos dos bloques de segundo orden con la forma directa II (a) y
forma directa I (b). Al escalar multiplicaremos la entrada por el factor 1
1
s y la salida del
filtro la multiplicaremos por 1s para que la función de transferencia total no experimente
cambios.
En la forma directa I, tenemos un único sumador que proporcionará la salida del filtro.
Como indicábamos anteriormente, si utilizamos aritmética de complemento a 2, si el
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.32
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
resultado de las múltiples sumas no produce desbordamiento, aunque las sumas parciales lo
produzcan, el resultado será correcto por lo que no será necesario escalar. Para la forma
directa II, la función de transferencia F(z) será:
22
111
1)(
−− ++=
zazazF
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
6.7.2.- Escalado de formas de formas en cascada y paralelo.
Conexión en cascada:
El esquema es el mismo que en el caso anterior, si bien tendremos un factor de escalado
para cada etapa. Si aseguramos que el nodo )(3 nw no produce desbordamiento, el resultado
final no lo producirá.
En esta estructura, para el cálculo de los factores de escalado intervienen todas las etapas
anteriores; es decir, la funcion de transferencia de la etapa i-ésima )(zFi es:
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.33
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
22
11
22
110
22
11
1
1
1)(etapas de número:
1
)()(
,2,1)(
−−
−−
−−
−
=
++
++=
++=
∞==
∏zaza
zbzbbzHN
zaza
zH
zF
pzFs
kk
kkkk
ii
i
k
k
i
pi
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
Los factores de escalado de las etapas 2ª y 3ª se suelen incluir en los coeficientes bk de la
etapa anterior para disminuir el número de productos.
Conexión en paralelo:
El procedimiento es idéntico al anterior, si bien no hay influencia entre etapas. Para el
cálculo del factor de escalado para cada etapa las funciones de transferencia serán4:
ramas º11
1)(
22
11
Nizaza
zFii
i ≤≤++
=−−
6.7.3.- Detección y prevención del desbordamiento a la salida del filtro.
Cuando utilizamos los factores de escalado determinados por las normas 2L y ∞L no se
evita completamente la posibilidad de desbordamiento (esto sólo ocurre con 1L ). Si
utilizamos aritmética en complemento a 2, el desbordamiento hace que la salida cambie
bruscamente entre los niveles máximo y mínimo. Para evitar este efecto, se utiliza
aritmética saturada. En este caso cuando se produce desboradamiento en las operaciones, la
señal de salida se mantiene en el valor máximo o mínimo (dependiendo del tipo de
desbordamiento). La siguiente gráfica muestra el resultado de las operaciones con
aritmética saturada (superior) y no saturada.
4 Si alguna de las etapas fuese de primer orden el término 02 =ia
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.34
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
6.8.- Errores de redondeo en las operaciones producto. Además de los problemas de desbordamiento que se pueden producir en los nodos suma y
como mediante el escalado pueden disminuirse sus efectos, otro factor que hemos de tener
en cuenta en la implementación de filtros en coma fija es la cuantización de las operaciones
producto. El esquema es el siguiente:
Entrada (B bits)
Coeficiente (B bits)
2B bits B bitsQ
Hemos de cuantizar la salida de 2B bits para obtener un resultado de B bits. Este proceso
introduce un error modelizado linealmente como:
x(n)2B bits B bits
y(n)=k x(n) + e(n)
e(n)
k
Modelo Lineal de Ruido
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.35
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
El sistema se comporta como un multiplicador ideal al que se le suma una perturbación
aleatoria e(n) que simula el efecto de la cuantización.
A la secuencia e(n), se le suponen las mismas características que citamos en la conversión
AD.
• e(n) es una versión muestreada de un proceso estacionario de ruido blanco
uniformemente distribuida en el rango de variación del error.
• e(n) no está correlacionada con la entrada x(n) ni con cualquier otra fuente de error
en otro multiplicador5.
Obtuvimos que la energía del ruido de cuantización venía dada por su varianza cuyo
valor es:
ciónrepresenta la de bits:212
22 bb
q
−=∆∆
=σ (sin signo)
El ruido de redondeo que se produce en cada multiplicador, en la conversión AD, se va
a propagar a través del filtro produciendo una señal de ruido a la salida que se solapará
con la salida ideal del filtro.
En el análisis siguiente nos aparecerán las expresiones )(zGi y )(ng i cuyo significado
es el siguiente:
)(zGi : función de transferencia desde la señal de error hasta la salida del filtro.
)(ng i : respuesta impulsional de )(zGi . ( { })()( 1 zGZng ii
−= )
Analicemos el ruido de redondeo en una estructura de 2º orden previamente escalada e
implementada mediante la forma directa I. Vamos a considerar que se produce
redondeo en cada operación producto.
5 Recordar que la no correlación con la entrada solo se verifica para cuntización por redondeo y truncamiento con representación en complemento a 2.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.36
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
En la gráfica (b) todas las fuentes de ruido que van a un mismo sumador se han
agrupado generando un nivel de ruido que será la suma de cada uno de ellos ya que
como hemos dichos son independientes entre sí.
En general, sabemos que el ruido a la salida 2yσ , está relacionado con el ruido en la
entrada 2xσ por ∑
∞
=
=0
222 )(k
xy khσσ , en nuestro caso el ruido a la entrada es 2eσ y el ruido
a la salida, debido a la cuantización de las operaciones producto, en esta estructura
vendrá dado por6:
22
11
1
0
222
1)(
)(5
−−
∞
=
++=
= ∑
zaza
szG
kgk
eq σσ
El ruido total presente a la salida del filtro debido a la conversión AD y a la
cuantización de las operaciones producto será la suma de ambos. Además si tenemos en
cuenta que 12
222 ∆
== ADe σσ obtenemos:
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.37
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
+
∆=+= ∑∑
∞
=
∞
= 0
2
0
22
222 )(5)(12 kk
qoADo kgkhσσσ
El procedimiento es completamente análogo para cualquier estructura. Consideremos
una etapa de segundo orden implementada mediante la forma directa II.
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
En este caso podemos agrupar las fuentes de ruido en 2 sumadores. e1 contiene la
contribución de 3 productos y e2 también 3 productos. Difieren en la función de
transferencia. La expresión del ruido de cuantización será:
1)(
)(1
)(
)(3)(3
2
122
11
22
110
11
0
22
2
0
21
22
=
=++
++=
+=
−−
−−
∞
=
∞
=∑∑
zG
zHszaza
zbzbbszG
kgkgk
e
k
eq σσσ
Luego el ruido total a la salida vendrá dado por:
+⋅+
∆=+= ∑∑
∞
=
∞
=
1)(3)(12 0
221
0
22
222
kk
qoADo khskhσσσ
6 Para el cálculo de la función de transferencia Gi(z), solo interviene la entrada ei(n) el resto de entradas se consideran nulas
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.38
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Podemos obtener expresiones similares para etapas en cascada y en paralelo.
Conexión en cascada:
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
Agrupando los errores en los sumadores obtenemos la expresión para el ruido de
cuantización:
1)(
)()(
)()(
)()()(
)()(
)()()()(
)()(
3)(5)(5)(3
4
334
3
3222
2
32111
1
0
23
0
22
0
21
22
=
⋅==
⋅⋅==
⋅⋅⋅==
+++= ∑∑∑
∞
=
∞
=
∞
=
zG
zHszE
zYzG
zHzHszE
zYzG
zHzHzHszE
zYzG
kgkgkgkkk
eq σσ
Análogamente para la descomposición en paralelo tenemos:
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.39
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Extraído de: Digital Signal Processing: a practical aproach. E.C. Ifeachor, B.W.Jervis
)()(
)(3121 0
222
zHszG
kgL
iii
L
i k
ieq
⋅=
++= ∑∑
=
∞
=
σσ
El término 2L+1 hace referencia a los 2 productos que cada etapa tiene a la salida, siendo L
el número de etapas, más el termino de ganancia. El otro sumando está ligado con los 3
productos que tenemos a la entrada de cada etapa. Hi(z) es la función de transferencia de
cada etapa en paralelo.
El estudio realizado considera que se cuantifica la salida de cada operación producto. Los
DSP actuales no necesitan redondear cada uno de los productos previo a las sumas ya que
disponen de un acumulador de 2B bits, esto reduce significativamente el nivel de ruido ya
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.40
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
que únicamente se cuantizarán las salidas de los sumadores; es decir, el factor relacionado
con el número de productos será siempre la unidad.
Por otra parte, en estas expresiones se observa que los factores de escalado van a producir
un incremento muy significativo del nivel de ruido a la salida.
Ejemplo:
Dado el sistema de segundo orden definido por la función de transferencia
21
21
9747.08353.11
1436.02872.01436.0)(
−−
−−
+−
++=
zz
zzzH
Sabiendo que la estructura utilizada para su implementación es la Forma Directa II
determina:
• Factores de escalado ∞LLL ,, 21 .
• Modelo lineal de ruido.
• Estima el ruido total a la salida debido a la cuantización (Operaciones producto y
conversión AD)
• Repite el ejercicio considerando la forma directa I.
Solución:
x(n) y(n)
-a1
z-1
z-1
-a2
e2(n)
e1(n)
e3(n)
e4(n)
e5(n)
b2 s
1/s
b1 s
b0 s x(n) y(n)
-a1
z-1
z-1
-a2
e1(n) e2(n)
b2 s
1/s
b1 s
b0 s
(a) (b)
Modelo lineal de ruido Modelo simplificado
w(n)
e0(n)
En el modelo (b) los errores están definidos como:
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.41
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
−⋅⋅
−⋅⋅
⋅⋅
→
⋅
−⋅−
−⋅−
→
)2(
)1(
)(
errores de suma)(
)(1
)2(
)1(
errores de suma)(
2
1
0
22
1
1
nwsb
nwsb
nwsb
ne
nxs
nwa
nwa
ne
Para el cálculo del factor de escalado, la función de transferencia desde la entrada a la
salida del sumador que puede producir desbordamiento (primer sumador) es:
21 9747.08353.11
1)(
−− +−=
zzzF
Utilizando Matlab podemos calcular los factores de escalado:
B=[0.1436, 0.2872 0.1436];
A=[1 -1.8353 0.9747];
%Respuesta impulsional de F(z)
h=impz(1,A);
L1=(sum(abs(h)));
L2=sqrt(sum(h.^2)); %También se puede utilizar la función norm()
[H,w]=freqz(1,A);
Linf=max(abs(H));
Obtenemos:
104.588412.12263803.136 21 === ∞LLL
Para el cálculo del ruido a la salida necesitamos las funciones de transferencia desde las
señales de error a la salida, que para nuestro sistema son:
1)(
)()(
9747.08353.11
1436.02872.01436.0
)(
)()(
22
21
21
11
1
==
+−
++==
−−
−−
zE
zYzG
zz
zzs
zE
zYzG
El error total a la salida debido a la cuantización vendrá dado por:
+= ∑
∞
=
1)(30
21
22
k
eq kgσσ
y el ruido debido a la conversión AD a la salida vendrá dado por: ∑∞
=
=0
222 )(k
ADoAD khσσ .
Utilizando Matlab obtenemos,
%Ruido a la salida debido a la cuantizacion de las operaciones
%producto
%Consideramos como factor de escalado L2
g1=impz(L2*B,A);
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.42
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
ruidoq=3*(g1'*g1+1)
h=impz(B,A);
ruidoAD=h'*h;
Obtenemos como resultado [ ] 1995112
15.4527.1990612
22222 ∆
=+∆
=+= oADqy σσσ
Si utilizamos la forma directa I el modelo de ruido incluyendo el factor de escalado con los
coeficientes bk será:
x(n) y(n)
e(n)
b2 /s
b0 /s
-a1 b1 /s
-a2
s
z-1
z-1
z-1
z-1
21
21
9747.08353.11
1436.02872.01436.0)(
−−
−−
+−
++=
zz
zzzF
93.7572.671.75 21 === ∞LLL
211 9747.08353.11
1)(
−− +−=
zzszG . Si consideramos como factor de escalado L2
[ ] 317.3312
15.4533172.1212
22222 ∆
=+∆
=+= oADqy σσσ
En ruido es mayor, pero si tenemos en cuenta que para la forma directa I no es necesario
incluir factor de escalado, si se trabaja con aritmética de complemento a 2, obtenemos
[ ] 94.77912
15.45734.79 12
22222
escalarsin
∆=+
∆=+= oADqy σσσ
que es menor que con la estructura directa II.
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.43
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Ejercicio propuesto: determina el nivel de ruido a la salida del filtro anterior debido a la
cuantización si se utiliza la forma directa II traspuesta.
6.9.- Emparejamiento de ceros y polos y ordenación de secciones. Hemos visto que la forma más adecuada de implementación es la cascada de secciones de
segundo orden, y también hemos analizado como determinar los errores producidos a la
salida del filtro debidos a la cuantización de las operaciones producto y la necesidad de
escalar los coeficientes para evitar el desbordamiento, si bien quedan por resolver dos
cuestiones:
• ¿Cómo agrupamos los ceros y polos para formar las secciones de segundo orden ?
• ¿Cómo ordenamos las secciones de segundo orden en cascada ?
Cada una de las posibles ordenaciones va a tener un nivel de ruido a la salida distinto.
Como regla práctica para la ordenación utilizamos la dada por Jackson.
REGLA PRÁCTICA
• En primer lugar, agrupar la pareja de polos complejos conjugados más próxima a la
circunferencia unidad con la pareja de ceros complejos más cercana.
• A continuación, agrupar la pareja de polos complejos más próximos a los anteriores
con la pareja de ceros complejos más próxima
• Repetir el proceso hasta que todos los ceros y polos estén emparejados
La siguiente figura muestra el orden en que se ha realizado el emparejamiento a partir del
diagrama de ceros y polos, de dos sistemas.
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.44
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
Este agrupamiento de ceros y polos disminuye el pico de la respuesta en frecuencia de cada
una de las secciones de segundo orden, además esto disminuye la posibilidad de
desbordamiento y el nivel de ruido a la salida.
Ordenación de secciones.
Una vez obtenidas las secciones de 2º orden hemos de proceder a su ordenación. Si
recordamos la definición de las funciones F(z) y G(z) para el cálculo de los factores de
escalado y para determinar el nivel de ruido a la salida respectivamente, las secciones
colocadas al principio tendrán mayor influencia en los factores de escalado y la situadas al
final influirán más en el cálculo del nivel de ruido a la salida.
Vamos a considerar dos criterios: Minimizar la energía del error a la salida y minimizar el
valor de pico del error a la salida (minimiza la posibilidad de desbordamiento). La
ordenación depende del tipo de escalado utilizado. La siguiente tabla muestra la ordenación
óptima.
Criterio 2L ∞L
Minimizar energía error a la salida
Polos cerca de 1=z a polos
lejos de 1=z (más picada a
menos picada)-down-
Orden apenas afecta
Minimizar la posibilidad de desbordamiento
Orden apenas afecta
Polos lejos de 1=z a polos
cerca de 1=z (menos
picada a más picada) –up
La función de Matlab tf2sos realiza la descomposición en cascada y también la ordenación:
[sos,g] = tf2sos(b,a,'order','scale')
scale: ‘none’,2,inf
order: ‘down’,’up’
6.10.- Oscilaciones de ciclo límite en sistemas recursivos Hasta ahora hemos utilizado un tratamiento de los efectos de trabajar con registros de
longitud finita utilizando un modelo lineal. Además hemos supuesto que la señal de entrada
no está correlacionada con la secuencia de error.
Un filtro digital es un sistema no lineal, debido a la cuantización de las operaciones, lo cual
puede hacer que un sistema estable con precisión infinita pase a ser inestable en precisión
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.45
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
finita para una señal de entrada específica. Este tipo de inestabilidad habitualmente se
traduce en un comportamiento periódico a la salida del sistema denominado CICLO
LÍMITE.
Un sistema que se encuentra en un ciclo límite permanecerá en esta situación hasta que se
aplique una señal de suficiente amplitud como para sacar al sistema de dicho estado.
Los ciclos límite únicamente se producen en sistemas IIR, como consecuencia de la
recursividad, no en sistemas FIR.
Existen dos tipos de ciclo límite:
• Ciclo límite GRANULAR(CLG). Es un ciclo límite de baja amplitud.
o CLG Inaccesible: solo se da para un determinado conjunto de condiciones
iniciales que caracterizan a dicho ciclo límite
o CLG Accesible: puede darse aunque las condiciones iniciales no estén
dentro del conjunto que caracteriza a dicho ciclo límite.
• Ciclo límite de DESBORDAMIENTO. Es un ciclo límite de gran amplitud
Las amplitudes de salida durante un ciclo límite están confinadas en un intervalo de valores
denominado BANDA MUERTA (Dead Band) del filtro
Ejemplo: Consideremos un sistema de primer orden )1(9.0)()( −+= nynxny . La
respuesta impulsional para 10)1(0)( =−= ynx
,...}5.3144 5.9049, 6.5610,,29.7,1.8,9{)(↑
=ny
Si en este sistema utilizamos cuantización por redondeo al entero más próximo
[ ])1(9.0)()( −+= nyQnxnyq obtenemos
...}5 ,5 5, 6, ,7 ,8 ,9{)(↑
=nyq CICLO LÍMITE DE PERÍODO 1, Banda muerta [0,5]
Si consideramos el sistema )1(9.0)()( −−= nynxny y realizamos el mismo tipo de
cuantización obtenemos:
...}5- ,5 5,- 6, ,7- ,8 ,9{)(↑
−=nyq CICLO LÍMITE DE PERÍODO 2, Banda muerta
[ ]5,5− .
También se pueden obtener ciclos límite con condiciones iniciales nulas y entrada no nula.
En la siguiente tabla se muestra la evolución de la salida del filtro )1()()( −+= nynxny α
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.46
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
para diversos valores de α ante una entrada )(16/15)( nnx δ⋅= utilizando cuantización por
redondeo y representación signo-magnitud.
Extraído de: Tratamiento Digital de Señales. J.G. Proakis
Para un sistema genérico de 1er orden tenemos
y(n)x(n)
z-1
a
IDEAL
v(n)x(n)
z-1
a
REAL
Q
y(n)=x(n)+ay(n-1) v(n)=x(n)+Q[av(n-1)]
Cuando la salida del filtro real está en un ciclo límite el sistema se comporta como si
tuviese un polo en 1=z para )0( >a y 1−=z para )0( <a con lo que la salida cuantizada
será:
[ ]
<−−
>−=−
1)1(
1)1()1(
anv
anvnavQr
Si consideramos cuantización por redondeo el error esta delimitado por:
b
rr
anv
navnavQne
−=∆−
∆
≤−
∆<−−−
∆≤
212)1(
2)1())1((
2)(
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.47
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
la expresión de v(n-1) define la banda muerta del filtro. Para representación en 4bits+ bits
de signo, b=4 y 5.0=a , la banda muerta es
−
16
1,
16
1
Consideremos un sistema de 2º orden.
Sistema lineal ideal: )2()1()()( 21 −−−−= nyanyanxny
Sistema no lineal real: [ ] [ ])2()1()()( 21 −−−−= nvaQnvaQnxnv
Tenemos 2 posibilidades de oscilación:
1. Si consideraremos polos complejos estos se encontrarán en θjrez ±= y
( ) 221 cos2 rara =−= θ . Cuando en el ciclo límite, con entrada nula, se verifique
[ ] )2()2(2 −=− nvnvaQ el sistema se comportará como si tuviese los polos sobre la
circunferencia unidad. En el ciclo límite el error será:
b
rr
anv
nvanvaQne
−=∆−
∆
≤−
∆<−−−
∆≤
21
2)2(
2)2())2((
2)(
2
22
Expresión que define la banda muerta del filtro (amplitud de la oscilación). La
frecuencia de la oscilación viene determinada por θcos21 ≅a
2. La otra posibilidad de oscilación con entrada nula, frecuencia 0 ó π, y amplitud v0 se
obtiene cuando al cuantizar [ ] [ ])2()1()()( 21 −−−−= nvaQnvaQnxnv se verifica.
[ ] [ ]02010 vaQvaQv −±=
Donde el signo positivo se da para oscilación de frecuencia π.
Si denotamos los errores de cuantización por )(1 ne y )(2 ne podemos obtener que la
amplitud de la oscilación al cuantizar por redondeo viene dada por:
210 1 aa
v+−
∆=
Si agrupamos las condiciones de estabilidad con las condiciones para la existencia de ciclos
límites en sistemas de segundo orden podemos obtener la representación siguiente del
scola ècnica uperior nginyeria
Departament d´Enginyeria Electrònica
6.48
FILTROS DIGITALES M. MARTÍNEZ, L. GÓMEZ, A. J. SERRANO, J. VILA, J. GÓMEZ CURSO 2009-2010
triángulo de estabilidad en el que se han marcado la zona en la que no se producen ciclos
límite (rejilla) y las zonas en las que sí se producen así como el período de dicho ciclo
límite.
Extraído de: Digital Filters and Signal Processing. L. B.Jackson
Las oscilaciones de ciclo límite de desbordamiento se eliminan en gran medida utilizando
aritmética saturada.
Las oscilaciones de ciclo límite granulares se eliminan, si se utiliza una cuantización por
truncamiento, en lugar de redondeo, si bien este tipo de cuantización además de presentar
offset en el valor medio del error, éste está correlacionado con la señal de entrada.
En realizaciones en paralelo, cada sección tienen un comportamiento independiente, pero
en etapas en cascada, si la frecuencia del ciclo límite de una etapa se encuentra en las
proximidades de la resonancia en etapas posteriores el ciclo límite puede amplificarse,
aumentando la banda muerta del filtro.