IMPLEMENTACIÓN DE FILTROS DIGITALES EN LÓGICA RECONFIGURABLE
TESIS QUE PRESENTA
Rodrigo Cruz González
PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS Asesor: Dr. Gonzalo I. Duchén Sánchez
ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA UNIDAD CULHUACÁN – IPN
SECCIÓN DE ESTUDIOS DE POSGRADO E
INVESTIGACIÓN
Agradezco a mis padres por el apoyo incondicional que siempre me otorgaron y regalarme la herencia más grande que es la educación que con mucho sacrificio lograron darme para ser el profesionista que el día de hoy he logrado ser. También agradezco a mi asesor por compartir sus conocimientos y enseñanzas para desarrollar mi investigación.
Agradezco a CONACYT y COFAA por la beca que se me otorgó para poder realizar mis estudios de posgrado así como agradezco al Instituto por otorgarme la beca tesis al final de mis estudios.
Agradezco a todos los profesores que durante mi vida estudiantil me inculcaron a aprovechar el gran legado que tiene la humanidad: el conocimiento.
Asimismo agradezco a toda la gente que en alguna etapa de mi vida me enseñaron algo para ser una mejor persona y un buen profesionista.
Índice.
Índice de tablas iii
Índice de figuras iv
Resumen 1
Abstract 1
Capítulo 1. Introducción 2
1.1 Objetivo 2
1.2 Aportación de la investigación 3
1.3 Descripción del proyecto de investigación 3
1.4 Organización de la tesis 5
Conclusiones 5
Capítulo 2. Diseño de filtros digitales 6
2.1 Filtros de Respuesta al Impulso Finito (FIR) 6
2.1.1 Respuesta de fase lineal y sus implicaciones 6
2.1.2 Especificaciones de los filtros FIR 10
2.1.3 Método para calcular los coeficientes del filtro FIR basado en ventanas 11
2.2 Filtros de Respuesta al Impulso Infinito (IIR) 21
2.2.1 Especificaciones de los filtros IIR 22
2.2.2 Uso de la transformada bilineal (BZT) y los filtros analógicos clásicos para diseñar filtros IIR 24
2.2.2.1 Resumen del método BZT para el cálculo de los coeficientes 25
2.2.2.2 Características de los filtros analógicos clásicos 26
2.2.3 Cálculo de los coeficientes del filtro IIR por mapeo de polos y ceros en el plano s 28
2.2.3.1 Ejemplos ilustrativos 34
Conclusiones 36
Capítulo 3. C2VHDL 37
3.1.1 Descripción de C2VHDL 37
3.1.1.1 Archivo filtro.cpp 40
3.1.1.2 Archivo xxxfilt.cpp 42
3.1.1.3 Archivo lecxxx.cpp 48
3.1.2 C2VHDL descriptivo 49
3.1.2.1 Descripción de los archivos vhd 50
Conclusiones 56
Capítulo 4. Ejemplos de aplicación de C2VHDL 57
4.1 Filtros FIR 57
4.1.1 Filtro pasa bajas (LPF) 57
4.1.2 Filtro pasa banda (BPF) 59
4.1.3 Filtro rechaza banda (BSF) 60
4.1.4 Filtro pasa altas (HPF) 63
Conclusiones 70
Conclusiones 71
Bibliografía 75
Apéndice A. Publicaciones 79
Apéndice B. Programas realizados en VHDL 85
Apéndice C. Programas realizados en Turbo C++ 94
Índice de tablas
Tabla 2.1 Resumen de las características principales de los filtros FIR de fase lineal 8 Tabla 2.2 Aplicación de los filtros FIR de fase lineal 10 Tabla 2.3 Resumen de las respuestas al impulso ideales para filtros estándar selectivos en
frecuencia 14
Tabla 2.4 Funciones ventana para el diseño de filtros FIR 15 Tabla 2.5 Características del espectro con ventanas 17 Tabla 2.6 Coeficientes del filtro FIR del ejemplo 2.1 20 Tabla 3.1 Representación de la posición de los bits de la mantisa para el formato de los datos
convertidos 44
Índice de figuras
Figura 1.1 Diagrama a bloques del proyecto de investigación 4 Figura 2.1 Características de filtros FIR de fase lineal de tipo (a) 1, (b) 2, (c) 3 y (d) 4 9 Figura 2.2 Especificaciones de respuesta en magnitud para un filtro pasa bajas 11 Figura 2.3 (a) Respuesta en frecuencia ideal de un filtro pasa bajas. (b) Respuesta
impulsional de un filtro pasa bajas ideal 13 Figura 2.4 Esquema de tolerancia para un filtro IIR pasa banda 23 Figura 2.5 Esquemas de respuestas en frecuencia de algunos filtros analógicos clásicos a)
repuesta Butterworth; b) Chebyshev tipo I 24 Figura 2.6 Mapeo de ceros de un filtro pasa bajas prototipo de segundo orden hacia (a) pasa
bajas, (b) pasa altas, (c) pasa banda y (d) rechaza banda 30 Figura 3.1 Diagrama de la estructura general de C2VHDL programable 38 Figura 3.2 Pantalla de (a) bienvenida y (b) presentación y descripción de C2VHDL 38 Figura 3.3 Pantalla de (a) elección del filtro y (b) toma de parámetros de diseño 39 Figura 3.4 Pantalla de elección (a) de ventana y (b) aproximación analógica 40 Figura 3.5 Pantallas de la presentación final de C2VHDL programable para un filtro FIR 41 Figura 3.6 Programa principal del código fuente de filtro.cpp 41 Figura 3.7 Programa principal del código fuente de (a) firfilt.cpp y (b) iirfilt.cpp 42 Figura 3.8 (a) Diagrama de flujo y (b) código fuente de la función tipo_de_filtro() 43 Figura 3.9 Criterio del código para mostrar la lista de las ventanas 44 Figura 3.10 (a) Diagrama de flujo para una iteración de la conversión de los coeficientes y (b)
código del proceso de conversión para un dato negativo 46 Figura 3.11 Líneas de código de la función filtro() 48 Figura 3.12 Diagrama de flujo de lectura y creación de archivos vhd 48 Figura 3.13 (a) Estructura directa para filtros FIR y (b) estructura cascada para filtros IIR 49 Figura 3.14 (a) Estructura de un tap y (b) bloque de segundo orden 50
Figura 3.16 Líneas de instrucción para describir la arquitectura (a) behav y (b) struct de un flip-flop tipo D y un registro de n bits respectivamente 52 Figura 3.17 Multiplicador de Booth [4]: (a) diagrama de flujo y (b) representación en
hardware 53
Figura 3.18 Descripción en VHDL de (a) filtfir.vhd y (b) filtiir.vhd 54 Figura 3.19 Metodología de diseño top-down de un sistema [6] 54
Figura 4.1 (a) Señal de entrada y (b) su TDF 58
Figura 4.2 Respuesta en frecuencia del filtro pasa bajas 59 Figura 4.3 (a) Señal de salida y (b) su TDF realizado por software de un LPF 60 Figura 4.4 (a) Señal de salida y (b) su TDF simulado en MAX+PLUS® II de un LPF 61 Figura 4.5 (a) Señal de salida y (b) su TDF realizado por software de un BPF 62 Figura 4.6 (a) Señal de salida y (b) su TDF simulado en MAX+PLUS® II de un BPF 63 Figura 4.7 Respuesta en frecuencia del filtro pasa banda 64 Figura 4.8 (a) Señal de salida y (b) su TDF realizado por software de un BSF 65 Figura 4.9 (a) Señal de salida y (b) su TDF simulado en MAX+PLUS® II de un BSF 66 Figura 4.10 Respuesta en frecuencia del filtro rechaza banda 67 Figura 4.11 Respuesta en frecuencia del filtro pasa altas 67 Figura 4.12 (a) Señal de entrada y (b) su TDF realizado por software de un HPF 68 Figura 4.13 (a) Señal de entrada y (b) su TDF simulado en MAX+PLUS® II de un HPF 69 Figura 1 Fotografía de las señales C y U del filtro a través de un osciloscopio 73
Resumen.
En la presente investigación se desarrolla una interfaz de usuario para el diseño e implementación de filtros digitales, la cual al recibir parámetros de diseño, realiza el cálculo de los coeficientes del filtro y entrega los archivos con formato VHDL necesarios para la posterior compilación, sintetización e implementación en dispositivos FPGA.
Es presentada la introducción y métodos de diseño para filtros FIR e IIR así como ejemplos ilustrativos que servirán de guía al usuario para realizar un correcto diseño. La interfaz desarrollada llamada C2VHDL está constituida por programas desarrollados en lenguaje C++ para realizar un cálculo eficiente de los coeficientes, así como la creación de los archivos en lenguaje de descripción de hardware (VHDL) conteniendo estructuras para su implementación.
Se realizan implementaciones de los filtros pasa bajas, pasa altas, pasa banda y rechaza banda para ejemplificar la interfaz en dispositivos FPGA de ALTERA® y XILINX®. Se describe un desarrollo futuro para el mejoramiento de la interfaz así como la implementación el la tarjeta de desarrollo S3ESK de XILINX®.
Abstact.
In the present research an interface to design and implement digital filters is developed, which receives design parameters, calculates the filters’s coefficients and gives files in VHDL fomat in order to compile, synthetize and implement them in FPGA devices.
An introduction and methods to design FIR and IIR filters is presented. Ilustrative examples will serve as an user’s guide to make a correct design. The developed interface is called C2VHDL. It is made by C++ programs to calculate efficient coefficients and then to create hardware description language (HDL) files with structures for its implementation.
Examples of the LP, HP, BP and BS filters are implemented in ALTERA®’s and XILINX®’s FPGA devices in order to use the interface. A future development to enhance the interface is decribed. In order to implement the proposed designs the XILINX®’s S3ESK board is used.
Capítulo 1. Introducción.
Un filtro es un sistema o red que cambia de una manera deseada la forma de onda, características de amplitud y/o fase de una señal. El objetivo común del filtrado es mejorar la calidad de la señal, extraer información de las señales o separar dos o más señales previamente combinadas para hacer uso eficiente, por ejemplo, de un canal de comunicación disponible [1].
Un filtro digital es un algoritmo matemático implementado en software y/o hardware que opera sobre una señal de entrada digital para producir una señal de salida digital con el propósito de mejorar el objetivo de filtrado [1]. Aunque los filtros digitales tienen algunas limitantes, entre sus ventajas se encuentran: inmunidad a no linealidades de los dispositivos, exactitud (limitada por el error de redondeo en la aritmética de la computadora), fácil modificación de las características del filtro, libertad de variaciones en los componentes y bajo costo [3].
Los filtros digitales tienen muchas ventajas sobre los filtros analógicos, por lo cual ha sido muy amplia la utilización y aplicación de éstos. Sin embargo, la implementación de los filtros digitales en hardware no resulta simple, o en ocasiones el diseño se enfoca a alguna aplicación específica dando como resultado la dificultad de rediseñarlos.
La utilización de filtros para aplicaciones en el procesamiento digital de señales (DSP) se ha incrementado tanto que es necesario usar algoritmos complejos para su diseño óptimo, sin embargo su implementación en VHDL también puede ser complejo. Existe una amplia bibliografía sobre diseño de filtros digitales, y los métodos para diseñarlos pueden no ser tan complejos computacionalmente.
1.1 Objetivo.
En muchas ocasiones se hace el diseño de filtros digitales para filtros FIR o IIR, y para aplicaciones, por ejemplo en cancelación de eco, se hace el diseño de ambos con
filtros FIR de propósito general [8], así como herramientas que sirven para la aceleración de la simulación de hardware [9], donde se utilizan herramientas como MATLAB® y C para el diseño de filtros; con dichas herramientas de software se tienen disponibles funciones predeterminadas, como fir2 de MATLAB® [8], la cual calcula los coeficientes del filtro; sin embargo no se ha desarrollado una herramienta que sirva de interfaz de usuario para vincular el diseño de los filtros digitales y su implementación en hardware para FPGA.
El proyecto de investigación de la presente tesis consiste en una interfaz de usuario en la cual se pueda vincular al diseño de filtros digitales FIR e IIR y su implementación en hardware utilizando dispositivos FPGA (ver figura 1.1).
1.2 Aportación de la investigación.
Se creó C2VHDL, que sirve como interfaz para el diseño de filtros e internamente realiza la vinculación con el VHDL para su implementación. Con esta interfaz, se pretende que el usuario pueda realizar diseños para cualquier aplicación, teniendo como limitación el dispositivo FPGA a utilizar, el cual entre más bloques lógicos contenga, mayor será su capacidad para implementar filtros de orden superior.
1.3 Descripción del proyecto de investigación.
C2VHDL es un programa para el diseño de filtros FIR e IIR, cuyo propósito es servir como una interfaz de usuario para la implementación de los mismos en dispositivos FPGA.
C2VHDL presenta una pantalla donde el usuario puede elegir entre filtros FIR o IIR, posteriormente proporciona parámetros de diseño para un filtro deseado, de los cuales C2VHDL se basa para determinar el tipo de filtro a tratar.
Si el usuario elige diseñar filtros FIR, C2VHDL presenta algunas ventanas de diseño basado en la atenuación en la banda de rechazo Ap. Por otra parte, si elige diseñar filtros IIR, C2VHDL presenta las aproximaciones analógicas con las que el usuario puede diseñarlos, Butterworth y Chebyshev Tipo I. Posteriormente, C2VHDL presenta una pantalla indicando el
Figura 1.1 Diagrama a bloques del proyecto de investigación.
tipo de filtro, pasa bajas (LPF), pasa altas (HPF), pasa banda (BPF) o rechaza banda (BSF), así como la ventana o aproximación analógica para los filtros FIR e IIR, respectivamente.
Internamente realiza el cálculo del orden del filtro, los coeficientes y su conversión a cadena de 12 bits.
Después se presenta una pantalla indicando el orden del filtro, FIR, y el número de bloques de segundo orden, IIR. C2VHDL, al ser una interfaz transparente para el usuario, crea dos archivos con extensión vhd, de los cuales uno contiene el orden o el número de bloques de segundo orden así como los coeficientes del filtro deseado en su representación de cadena de bits, coexxx.vhd, y el archivo filtxxx.vhd contiene la estructura del mismo, donde xxx representa FIR o IIR.
Posteriormente, se presenta una pantalla indicando la ubicación de los archivos arriba mencionados, siendo ésta una carpeta de trabajo dentro del sintetizador MAX+PLUSII de ALTERA. Una pantalla final indica al usuario que debe realizar en primer lugar la compilación del archivo coexxx.vhd y después la del archivo filtxxx.vhd en un sintetizador de
VHDL para su posterior implementación en dispositivos FPGA. La ubicación de los archivos puede cambiar dependiendo del sintetizador que el usuario utilice.
1.4 Organización de la tesis.
La tesis consiste de tres partes: la primera consiste en el capítulo 2, donde se hace referencia al diseño de filtros digitales tanto FIR como IIR y los diversos métodos para el cálculo de sus coeficientes.
La segunda parte consiste en el capítulo 3, en el cual se hace una descripción con más detalle de C2VHDL, haciendo hincapié en los programas utilizados para la realización del mismo. También se hace referencia a los componentes utilizados para la descripción en hardware así como las líneas de código importantes que conforman el programa.
La tercera parte consiste en el capítulo 4, en el cual se hacen ejemplos y simulaciones de los filtros, haciendo una comparación de los resultados obtenidos en C2VHDL con respecto a la simulación del filtrado realizado en C++.
Finalmente en el capítulo 5 se realizan las conclusiones del trabajo de investigación junto con la experiencia adquirida así como un desarrollo más amplio que podría tener este trabajo, como es el diseño e implementación de filtros adaptables así como el diseño en modo asincrónico.
Conclusiones.
La importancia de los filtros para el procesamiento digital de señales (DSP) ha sido cada vez más aclamada para desarrollar proyectos y aplicaciones para soluciones de propósito general así como de propósito específico.
A lo largo de la realización del trabajo de investigación se encontró que las posibles soluciones para el DSP no siempre están desarrolladas a nivel hardware. Sin embargo, lo poco desarrollado en hardware no es reutilizable con todas las aplicaciones.
Capítulo 2. Diseño de filtros digitales.
2.1 Filtros de Respuesta al Impulso Finito (FIR).
Los filtros ideales son no causales, lo que los hace físicamente irrealizables. Los filtros ideales tienen una repuesta en frecuencia con características deseables, por lo que se tiene la necesidad de realizar filtros causales con respuesta en frecuencia aproximada a los filtros ideales con tanta precisión como se desee [1].
La causalidad tiene muchas implicaciones importantes en el diseño de filtros selectivos en frecuencias, (a) la respuesta en frecuencia H(ω) no puede ser cero, excepto en un conjunto finito de puntos en frecuencia; (b) la magnitud |H(ω)| no puede ser constante en ningún intervalo finito de frecuencias y la transición de la banda de paso a la banda de rechazo no puede ser infinitamente abrupta (consecuencia del fenómeno de Gibbs causado por el truncamiento de h(n) para lograr causalidad); y las partes real e imaginaria de H(ω) son independientes y están relacionadas por la transformada de Hilbert discreta. Como consecuencia la magnitud |H(ω)| y la fase θ(ω) de H(ω) no se pueden elegir arbitrariamente [2].
2.1.1 Respuesta de fase lineal y sus implicaciones.
Una señal al ser procesada por un filtro, modifica su amplitud y fase. La naturaleza y extensión de la modificación de la señal depende de las características de fase y amplitud del filtro. Para poder conocer la modificación de las características de la señal filtrada, se utiliza lo que se llama retraso de fase o retraso de grupo.
Para una señal que consiste de diversas componentes de frecuencia como la voz o una señal modulada, el retraso de fase del filtro es la cantidad de retraso de tiempo que sufre cada componente de frecuencia de la señal cuando para a través del filtro. Por otra parte, el retraso de grupo es el promedio de retraso de tiempo que la señal compuesta sufre en cada
componente en frecuencia. Matemáticamente, el retraso de fase es el negativo del ángulo de fase dividido por la frecuencia, mientras que el retraso de grupo es el negativo de la derivada de la fase con respecto a la frecuencia, es decir
ω ω θ( )/
−
p =
T (2.1)
ω ω
θ d
d
Tg =− ( )/ (2.2)
Un filtro de fase no lineal causará distorsión de fase a la señal. Una distorsión indeseable puede evitarse haciendo uso de filtros con características de fase lineal sobre las bandas de frecuencia de interés. Un filtro tiene una respuesta en fase lineal si su respuesta en fase cumple con las siguientes relaciones:
αω ω
θ( )=− (2.3)
αω β ω
θ( )= − (2.4)
donde α y β son constantes. Cuando un filtro satisface la condición dada por (2.3), tendrá una repuesta con retraso de fase y de grupo constantes. La condición (2.3) se satisface cuando la repuesta al impulso del filtro tiene simetría positiva. En este caso, la respuesta en fase es simplemente una función de la longitud del filtro.
= −
−
=
−
− =
−
= , ( 1)/2
) (
1 ) 2 / ( , , 1 , 0
) (
2 / ) 1 ( , , 1 , ), 0
1 (
)
( N
par N N
n
impar N N
n n N h n
h α
K K
Cuando solo se satisface (2.4), el filtro solamente presentará un retraso de grupo constante. En este caso, la respuesta al impulso del filtro tiene simetría negativa [1].
2 / ,
2 / ) 1 ( ),
1 (
)
(n =−h N−n− α = N− β =π h
La tabla 2.1 muestra las características principales con respecto a los cuatro tipos de filtros FIR de fase lineal.
La figura 2.1 muestra las diferencias de las repuestas al impulso de los cuatro tipos de filtros FIR de fase lineal. La respuesta en frecuencia de un filtro del tipo 2 siempre es cero a f = 0.5 (la mitad de la frecuencia de muestreo), por lo que no es realizable como un filtro pasa altas. Los tipos 3 y 4 presentan un desplazamiento en fase de 90°. La respuesta en frecuencia siempre es cero a f = 0, no permitiendo su realización como filtros pasa bajas. Además, la respuesta del tipo 3 siempre es cero a f = 0.5, por lo que tampoco puede realizarse como un filtro pasa altas. Los tipos 3 y 4 frecuentemente son usados para diseñar diferenciadores y transformadores Hilbert. El tipo 1 es el más versátil de los cuatro.
El retraso de fase para los filtros del tipo 1 y 2, o el retraso de grupo para los cuatro tipos de filtros puede expresarse en términos del número de coeficientes del filtro así como puede ser ajustado para obtener una respuesta de retraso de fase o de grupo nulo.
Tabla 2.1 Resumen de las características principales de los filtros FIR de fase lineal.
Simetría de la respuesta al impulso
Número de coeficientes N
Respuesta en frecuencia H(ω)
Tipo de fase lineal Impar
( ) (
∑
−)( ) ( )
=
−
− 1/2
0 2 /
1 cos
N n N
j a n n
e ω ω 1
Simetría Positiva,
) 1 ( )
(n h N n
h = − −
Par
( )
∑ ( ) [ ( ) ]
=
−
− /2 −
1 21
2 /
1 N cos
n N
j bn n
e ω ω 2
Impar
( )
[ ](
∑
−)( ) ( )
=
−
−
− 1/2
1 2 / 2 /
1 sin
N n N
j a n n
e ω π ω 3
Simetría Negativa,
) 1 ( )
(n h N n
h =− − −
Par
( )
[ ]
∑ ( ) [ ( ) ]
=
−
−
− /2 −
1 21
2 / 2 /
1 N sin
n N
j bn n
e ω π ω 4
] 2 / ) 1 [(
2 ) ( ];
2 / ) 1 [(
) 0
( h N a n h N n
a = − = − −
) 2 / ( 2 )
(n h N n
b = −
Figura 2.1 Características de filtros FIR de fase lineal de tipo (a) 1, (b) 2, (c) 3 y (d) 4.
Por ejemplo, para los filtros del tipo 1 y 2, el retraso de fase está dado por (2.5) y para los tipos 3 y 4 el retraso de grupo está dado por (2.6) [1, 3]. La tabla 2.2 resume las características para su aplicación que tienen los cuatro tipos de filtros.
N T
Tp
= − 2
1 (2.5)
N T
Tg
− −
= 2
1 π (2.6)
donde T es el periodo de muestreo.
Tabla 2.2 Aplicación de los filtros FIR de fase lineal.
Tipo H(F) = 0 en Aplicación
1 Todos los tipos de filtros. Secuencia sólo para BSF 2 F = 0.5 Sólo LPF y BPF
3 F = 0, F = 0.5 BPF, diferenciadores, transformadores de Hilbert 4 F = 0 HPF, BPF, diferenciadores, transformadores de Hilbert
2.1.2 Especificaciones de los filtros FIR.
Para que el usuario pueda diseñar filtros FIR se necesitan establecer los requerimientos del filtro que desee implementar, como son las características de la señal, las características del filtro, la manera de implementarlo y otras consideraciones de diseño. Sin embargo, para la respuesta en fase sólo se necesita establecer si el filtro requiere simetría positiva o simetría negativa, asumiendo fase lineal.
Para la respuesta en amplitud normalmente se especifica en forma de un esquema de tolerancia. La figura 2.2 muestra un esquema para un filtro pasa bajas, cuyos parámetros de interés son:
δp Máxima desviación (ondulación) en la banda de paso δs Máxima desviación (ondulación) en la banda de rechazo fp Frecuencia de borde en la banda de paso
fs Frecuencia de borde en la banda de rechazo Fs Frecuencia de muestreo
En la práctica es muy común expresar δp y δs en decibeles para especificar el rizo en la banda de paso y la mínima atenuación en la banda de rechazo respectivamente. La diferencia entre fs y fp proporciona el valor del ancho de transición del filtro. Otro parámetro a considerar es la longitud del filtro N, el cual define el número de coeficientes a calcular. En la mayoría de
Figura 2.2 Especificaciones de respuesta en magnitud para un filtro pasa bajas.
los casos, éstos parámetros definen completamente la respuesta en frecuencia de un filtro FIR [1].
( )
ss atenuaciónenlabandaderechazo
A =−20log10δ (2.7)
( ) (
p)
p rizoenlabandade paso
A =20log10 1+δ (2.8)
En resumen, el problema de diseño de filtros FIR es simplemente el de determinar N coeficientes h(n), n = 0, 1,..., N – 1, a partir de una especificación de la respuesta en frecuencia deseada Hd(ω) del filtro FIR. Los parámetros importantes en la especificación de Hd(ω) se dan en la figura 2.2 [2].
2.1.3 Método para calcular los coeficientes del filtro FIR basado en ventanas.
Con la especificación de la respuesta en frecuencia deseada se determina la correspondiente respuesta al impulso hd(n). Ambas se relacionan mediante la transformada de Fourier (2.9) y (2.10).
( ) ∑
∞( )
=
= − 0 n
n j d
d h n e
H ω ω (2.9)
y
( )
=∫
−π( )
π
ω ω
π H ω e d n
hd d j n
2
1 (2.10)
La respuesta al impulso hd(n) obtenida en (2.9) es infinita en duración y debe ser truncada en algún punto, por ejemplo en n = N – 1, para producir un filtro FIR de longitud N.
El truncamiento de hd(n) a una longitud N es equivalente a multiplicar hd(n) por una ventana rectangular, definida como
( )
= −= enotrocaso N n n
w 0,
1 , , 1 , 0 ,
1 K (2.11)
y su transformada de Fourier está definida como
( ) ∑
−( )
=
= 1 − 0 N n
n
e j
n w
W ω ω (2.12)
Así, la respuesta impulsional del filtro FIR se convierte en
( )
n h( ) ( )
n wnh = d
( )
= −
= enotrocaso N n
n hd
, 0
1 , , 1 , 0
, K (2.13)
La figura 2.3 muestra la respuesta ideal de un filtro pasa bajas donde ωc es la frecuencia de corte y la escala de frecuencia está normalizada, T = 1. Si se permite a la respuesta ir desde −ωc hasta ωc la operación de integración se simplifica, obteniendo la respuesta al impulso como
( )
=∫
− × =∫
−cc
d e d
e n
hd j n ω j n
ω ω π
π π
ω
π ω 21 ω
21 1
( )
≠ −∞≤ ≤∞= n n
n n f
c c
csin , 0,
2 ω
ω (2.14)
(
usandolareglade LHôpital)
n
fc, 0 '
2 =
=
Las respuestas al impulso para los filtros ideales pasa altas, pasa banda y rechaza banda se obtienen del caso del pasa bajas de la ecuación (2.14) y se muestran en la tabla 2.3 [1].
La convolución de Hd(ω) con W(ω) tiene el efecto de suavizar Hd(ω). A medida que crece N, W(ω) se hace más estrecho y el suavizado producido por W(ω) se reduce. Por otro lado, los lóbulos laterales grandes de W(ω) producen unos efectos indeseables de rizado en la respuesta en frecuencia del filtro FIR H(ω), y también en los lóbulos laterales relativamente grandes de H(ω). Estos efectos indeseables se alivian mediante el uso de ventanas que no contienen discontinuidades abruptas en sus características del dominio temporal, mostrando así, lóbulos laterales bajos en sus características en el dominio de la frecuencia [2].
Figura 2.3 (a) Respuesta en frecuencia ideal de un filtro pasa bajas. (b) Respuesta impulsional de un filtro pasa bajas ideal.
Tabla 2.3 Resumen de las respuestas al impulso ideales para filtros estándar selectivos en frecuencia.
Respuesta al impulso ideal, hd(n)
Tipo de filtro hd(n), n ≠ 0 hd(0)
Pasa bajas
( )
c c
c n
f n ω
ω 2 sin
fc
2
Pasa altas
( )
c c
c n
f n ω
ω 2 sin
−
fc
2 1−
Pasa banda
( ) ( )
1 1 1
2 2 2
2 sin 2 sin
ω ω ω
ω
n f n n
f n −
(
2 1)
2 f − f
Rechaza banda
( ) ( )
2 2 2
1 1 1
2 sin 2 sin
ω ω ω
ω
n f n n
f n −
(
2 1)
2 1− f − f
fc, f1 y f2 son las frecuencias de borde en la banda de paso o rechazo normalizadas.
fc = 0.5 (fp + fs)
La tabla 2.4 lista varias funciones ventana que poseen características de respuesta en frecuencia deseable. Todas estas funciones ventana tienen lóbulos laterales significativamente más bajos, comparados con la ventana rectangular. Sin embargo, para el mismo valor de N, el ancho del lóbulo principal es también más amplio para estas ventanas comparado con la ventana rectangular. Como consecuencia, estas funciones ventana proporcionan mayor suavizado a través de la operación de convolución en el dominio de la frecuencia, y como resultado la región de transición en la respuesta del filtro FIR es más amplia. Para reducir el ancho de esta región de transición podemos incrementar la longitud de la ventana [2].
La mayoría de las ventanas se han desarrollado utilizando algún criterio de optimización. La solución intermedia es un balance entre los requisitos conflictivos de un lóbulo principal estrecho y los niveles pequeños de los lóbulos laterales. Algunas ventanas se basan en combinaciones de ventanas más simples, por ejemplo, la ventana de Von Hann (o Hanning) es la suma de una ventana rectangular y una coseno, la ventana de Barlett es la convolución de dos ventanas rectangulares. Otras ventanas se diseñan para enfatizar ciertas características deseables, como la ventana de Von Hann, que mejora el decaimiento de la alta frecuencia; la ventana de Hamming minimiza el nivel del lóbulo lateral [3].
Tabla 2.4 Funciones ventana para el diseño de filtros FIR.
Nombre de la ventana
Secuencia en el dominio del tiempo w(n), 0 ≤ n ≤ 0.5 (N – 1)
Coseno
cos −1
N nπ
Riemann , 0
1
2 >
− L
N SaL nπ
Barlett (Triangular) 1
1 2
− − N
n
Von Hann (Hanning)
+ −
1 cos 2 5 . 0 5 .
0 N
nπ
Hamming
+ −
1 cos 2 46 . 0 54 .
0 N
nπ
Blackman
+ −
+ −
1 cos 4 08 . 1 0 cos 2 5 . 0 42 .
0 N
n N
nπ π
Kaiser
( [ ( ) ] )
( )
πβ πβ0
2
0 1 4 / 1
I
N n
I − −
( ) ( )
t t t
Sa ω
ω = sinω ;
( ) ( )
, 25! 2 1 /
1
2
0 <
+
=
∑
=
k L x x
I L
k
k
El ancho de transición del espectro con ventanas disminuye con la longitud N, pero no hay manera exacta de establecer la longitud N mínima del filtro que satisfaga las especificaciones de diseño. Las estimaciones empíricas se basan en la comparación del ancho de transición normalizado ∆F = fs – fp, que es inversamente proporcional a la longitud de la ventana [3], obteniendo así
p
s f
f N C
= − (2.15)
donde C es una constante para cada ventana. La tabla 2.5 muestra esta relación para determinar la longitud N así como la atenuación máxima en la banda de rechazo (lóbulo lateral).
Debido a que no existe un método exacto para el cálculo de la longitud N para filtros FIR, se han desarrollado diversas relaciones empíricas, una es con base en la ventana de Kaiser, donde primero se calculan las ondulaciones en la banda de paso y rechazo, δp y δs
respectivamente para elegir a la más pequeña como parámetro de ondulación δ:
1 10
1 10
20 /
20 /
+
= −
p p
A A
δp δs =10−As/20 δ =min
(
δp,δs)
(2.16)Se recalcula la atenuación real en la banda de rechazo por medio del parámetro de ondulación δ en decibeles
dB
A=−20logδ (2.17)
Finalmente, la longitud N se calcula con
<
∆ +
≥
∆ +
−
≥
dB F A
dB F A
A N
21 ,
9222 1 . 0
21 ,
36 1 . 14
95 . 7
(2.18)
El parámetro de ventana Kaiser β se estima a partir de la atenuación real en la banda de rechazo A de la siguiente manera
( ) ( )
( )
≥
−
<
<
− +
−
≤
=
dB A
A
dB A
dB A
A
dB A
50 ,
7 . 8 1102 . 0
50 21
, 21 07886
. 0 21 5842
. 0
21 ,
0
4 .
β 0 (2.19)
Tabla 2.5 Características del espectro con ventanas.
Ventana Atenuación máxima en la banda de rechazo (lóbulo lateral) (dB)
Ancho de transición
∆F = C / N
Boxcar (Rectangular) 13.3 C = 0.92
Coseno 23 C = 2.1
Riemann 26.4 C = 2.5
Barlett 26.5 -
Von Hann (Hanning) 31.5 C = 3.21
Hamming 42.7 C = 3.47
Blackman 58.1 C = 5.71
Kaiser 60 -
Otra manera empírica para calcular la longitud N para un filtro pasa bajas y un filtro pasa banda se determinan a través de (2.20) y (2.21) respectivamente.
Filtro pasa bajas (Herrman et al., 1973)
(
∆ ,) ( )
− , ∆ +1≈ ∞ f F
F
N D δp δs δp δs
(2.20)
donde
( ) [ ( )
2 10 3]
2 10 1
10 log log
log
, a a a
D∞ δp δs = δs δp + δp +
( )
[
5 10 6]
2 10
4 log a log a
a p + p +
+ δ δ
(
p s) [
p s]
f δ ,δ =11.01217+0.51244log10δ −log10δ
1 6
1 5
3 4
1 3
2 2
3 1
10 278 . 4
; 10 941 . 5
10 66 . 2
; 10 761 . 4
10 114 . 7
; 10 309 . 5
−
−
−
−
−
−
×
−
=
×
−
=
×
−
=
×
−
=
×
=
×
=
a a
a a
a a
Filtro pasa banda (Mintzer and Liu, 1979)
(
∆ ,) ( )
+ , ∆ +1≈ ∞ g F
F
N C δp δs δp δs
(2.21)
donde
( ) [ ( )
2 10 3]
2 10 1
10 log log
log
, b b b
C∞ δp δs = δs δp + δp +
( )
[
5 10 6]
2 10
4 log b log b
b p + p +
+ δ δ
(
,)
14.6log10 −16.9
−
=
s p s
g p
δ δ δ
δ
44314 . 0
; 5705 . 0
00203 . 0
; 51325 . 0
09664 . 0
; 01201 . 0
6 5
4 3
2 1
−
=
−
=
=
−
=
=
=
b b
b b
b b
Ejemplo 2.1
Obtener los coeficientes de un filtro FIR pasa bajas utilizando el método de ventanas con las siguientes especificaciones.
Frecuencia de borde en la banda de paso 1.5 kHz
Ancho de transición 0.5 kHz
Atenuación en la banda de rechazo >40 dB
Frecuencia de muestreo 8 kHz
Solución.
De la tabla 2.3, se selecciona hd(n) para un LPF. La tabla 2.5 indica que la ventana Hamming, Blackman o Kaiser satisfacen los requerimientos de la atenuación en la banda de rechazo. Por simplicidad se usará la ventana de Hamming. Para obtener el orden del filtro,
∆F = 0.5 / 8 = 0.0625, y N = 3.47 / ∆F = 52.8, redondeado a N = 53. Los coeficientes del filtro se obtienen de
hd(n)w(n) −26 ≤ n ≤ 26
Se calcula la frecuencia de corte:
fc = fp + (∆F / 2) = (1.5 + 0.25) kHz = 1.75 kHz → 1.75 / 8 = 0.21875
Se observa que h(n) es simétrica, por lo tanto sólo se calculan los valores para h(0), h(1), ..., h(26) y se usa la propiedad de simetría para calcular los otros coeficientes.
n = 0: hd(0) = 2fc = 2 x 0.21875 = 0.4375 w(0) = 0.54 + 0.46 cos(0) = 1 h(0) = hd(0)w(0) = 0.4375
n = 1: hd(1) = sin(360° x 0.21875) / π = 0.31219 w(1) = 0.54 + 0.46 cos(360° / 53) = 0.99677 h(1) = h(−1) = hd(1)w(1) = 0.31118
n = 2: hd(2) = sin(157.5°) / 2π = 0.06013
w(2) = 0.54 + 0.46 cos(720° / 53) = 0.98713 h(2) = h(−2) = hd(2)w(2) = 0.06012
. . . . . . . . . . . .
n = 26: hd(26) = sin(26 x 2π x 0.21875) / 26π = −0.01131 w(26) = 0.54 + 0.46 cos(9360° / 53) = 0.08081 h(26) = h(−26) = hd(26)w(26) = −0.000914
Se observa que los índices de los coeficientes están desde –26 hasta 26. Para lograr la causalidad se debe sumar 26 a los índices para que inicie desde cero. Los coeficientes del filtro con los índices ajustados se muestran en la tabla 2.6.
Tabla 2.6 Coeficientes del filtro FIR del ejemplo 2.1 (N = 53, ventana Hamming, fc = 1750 Hz).
h[ 0] = −9.1399895e−04 = h[52]
h[ 1] = 2.1673690e−04 = h[51]
h[ 2] = 1.3270280e−03 = h[50]
h[ 3] = 3.2138355e−04 = h[49]
h[ 4] = −1.9238177e−03 = h[48]
h[ 5] = −1.4683633e−03 = h[47]
h[ 6] = 2.3627318e−03 = h[46]
h[ 7] = 3.4846558e−03 = h[45]
h[ 8] = −1.9925839e−03 = h[44]
h[ 9] = −6.2837232e−03 = h[43]
h[10] = 4.5320247e−09 = h[42]
h[11] = 9.2669460e−03 = h[41]
h[12] = 4.3430586e−03 = h[40]
h[13] = −1.1271299e−02 = h[39]
h[14] = −1.1402453e−02 = h[38]
h[15] = 1.0630714e−02 = h[37]
h[16] = 2.0964392e−02 = h[36]
h[17] = −5.2583216e−03 = h[35]
h[18] = −3.2156086e−02 = h[34]
h[19] = −7.5449714e−03 = h[33]
h[20] = 4.3546153e−02 = h[32]
h[21] = 3.2593190e−02 = h[31]
h[22] = −5.3413653e−02 = h[30]
h[23] = −8.5682029e−02 = h[29]
h[24] = 6.0122145e−02 = h[28]
h[25] = 3.1118568e−01 = h[27]
h[26] = 4.3750000e−01 = h[26]
2.2 Filtros de Respuesta al Impulso Infinito (IIR).
Los filtros digitales IIR están caracterizados por la siguiente ecuación recursiva:
( ) ∑ ( ) ( ) ∑ ( ) ∑ ( )
=
=
∞
=
−
−
−
=
−
= M
k k N
k k k
k n y a k
n x b k
n x k h n
y
1 0
0
(2.22)
donde h(k) es la respuesta al impulso teóricamente infinita en duración, bk y ak son los coeficientes del filtro, y x(n) y y(n) son la entrada y salida del filtro. La función de transferencia para un filtro IIR está dada por
( ) ∑
∑
=
−
=
−
−
−
−
−
+ + =
+ +
+ +
= + M
k
k k N k
k k M
M N N
z a
z b z
a z
a
z b z
b z b
H
1 0 1
1 1 1 0
1 K 1
K (2.23)
Una parte importante del proceso de diseño de los filtros IIR es encontrar los valores adecuados para los coeficientes bk y ak tales que algún aspecto de las características del filtro, como la respuesta en frecuencia, se comporte de una manera adecuada.
Se debe notar que en la ecuación (2.22), la muestra de salida actual y(n) es una función de las salidas pasadas, y(n – k), así como muestras de entrada presentes y pasadas, x(n – k), esto hace que los filtros IIR se comporten como sistemas con retroalimentación. La solidez de los filtros IIR proviene de la flexibilidad que el arreglo de retroalimentación provee. Por ejemplo, un filtro IIR normalmente requiere menos coeficientes que un filtro FIR para el mismo conjunto de especificaciones; esto se debe a que los filtros IIR son usados cuando el corte abrupto y el alto rendimiento son los requerimientos importantes. El precio de esto es que el filtro IIR puede volverse inestable o su rendimiento decae significativamente si no se tiene un cuidado adecuado en su diseño.
La función de transferencia de los filtros IIR, dada por la ecuación (2.23), puede ser factorizada como
( ) ( )( ) ( ) (
z p)(
z p) (
z pMN)
z z z z z z z K
H − − −
−
−
= −
K K
2 1
2
1 (2.24)
donde z1, z2, ... son los ceros de H(z), aquellos valores de z para los cuales H(z) se vuelve cero, y p1, p2, ... son los polos de H(z), aquellos valores de z para los cuales H(z) es infinito [1].
Para el diseño de filtros digitales IIR existen dos posibles métodos. Un método popular se basa en el uso de los bien establecidos métodos para diseñar filtros analógicos, seguidos de una proyección que convierte el filtro analógico en digital. Un método alternativo se basa en diseñar el filtro digital directamente, usando equivalentes digitales de aproximaciones analógicas. Debido a los efectos del muestreo, difícilmente cualquier transformación de un filtro analógico en digital conserva la respuesta y la estabilidad del filtro analógico [3].
2.2.1 Especificaciones de los filtros IIR.
Al igual que en los filtros FIR, el diseño de los filtros IIR comienza por establecer los requerimientos de especificación del filtro deseado como son las características de la señal, las características de la respuesta en frecuencia del filtro, la manera de implementación y otras limitaciones de diseño. En general, los requerimientos arriba mencionados son dependientes para las aplicaciones. Sin embargo, no es necesario contar con todos los requerimientos para especificar al filtro [1].
Para filtros selectivos en frecuencia, tales como los filtros pasa bajas y pasa banda, las especificaciones de respuesta en frecuencia son representadas en forma de esquema de tolerancia. La figura 2.4 describe dicho esquema para un filtro IIR pasa banda, donde las líneas horizontales sombreadas indican los límites de tolerancia [1].
Los siguientes parámetros normalmente son usados para especificar la respuesta en frecuencia.
ε2 Parámetro de rizo en la banda de paso δp Desviación en la banda de paso
Figura 2.4 Esquema de tolerancia para un filtro IIR pasa banda.
δs Desviación en la banda de rechazo fp1 y fp2 Frecuencias de borde en la banda de paso fs1 y fs2 Frecuencias de borde en la banda de rechazo
Las frecuencias de borde en ocasiones se proporcionan en forma normalizada (f / Fs).
Las desviaciones en la banda de paso y rechazo pueden ser expresadas como números ordinarios o en decibeles; así, el rizo en la b anda de paso en decibeles es
( ) (
p)
Ap =10 log10 1+ε2 =−20log10 1−δ (2.25)
y la atenuación en la banda de rechazo en decibeles es
( )
sAs =−20 log10 δ (2.26)
Para los filtros IIR, el rizo en la banda de paso es la diferencia entre la desviación máxima y mínima en la banda de paso, mientras que para los filtros FIR es la diferencia entre la respuesta ideal y la desviación máxima (o mínima) en la banda de paso [1].
2.2.2 Uso de la transformada z bilineal (BZT) y los filtros analógicos clásicos para diseñar filtros IIR.
En muchos casos prácticos, la función de transferencia analógica H(s), de la cual se obtiene H(z), puede no estar disponible y tendrá que ser determinada de las especificaciones de los filtros digitales deseados. Para pruebas de filtrado digital de frecuencias selectivas, H(s) se puede derivar de los filtros clásicos con características Butterworth o Chebyshev (ver figura 2.5) [1].
Figura 2.5 Esquemas de respuestas en frecuencia de algunos filtros analógicos clásicos a) repuesta Butterworth;
b) Chebyshev tipo I.
2.2.2.1 Resumen del método BZT para el cálculo de los coeficientes.
Para filtros IIR selectivos en frecuencia, los pasos para utilizar la BZT pueden ser resumidos como sigue [1]:
(1) Utilizar las especificaciones del filtro digital para encontrar un filtro pasa bajas analógico prototipo normalizado H(s).
(2) Determinar y transformar las frecuencias críticas o de borde del filtro deseado. Para los filtros LP o HP solo existe una frecuencia de corte o de borde. Para los filtros BP y BS, se tienen frecuencias de borde en la banda de paso alta y baja, ωp1 y ωp2, cada una de las cuales necesita ser transformada (las frecuencias de borde en la banda de rechazo también pueden ser especificadas):
=
′ tan 2pT
p
ω ω (2.27a)
=
′
=
′ ; tan 2
tan 21 2 2
1
T
T p
p p
p
ω ω
ω ω (2.27b)
(3) Desnormalizar el filtro prototipo analógico reemplazando s en la función de transferencia H(s), usando una de las siguientes transformaciones, dependiendo del tipo de filtro requerido:
p
s s ω′
= LP2LP (2.28a)
s ωs′p
= LP2HP (2.28b)
Ws s s
2 0 2 +ω
= LP2BP (2.28c)
2 2 +ω
= s
s Ws LP2BS (2.28d)
donde
1 2 1
2 2
0 ωp ωp , W ωp ωp
ω = ′ ′ = ′ − ′
(4) Aplicar la BZT para obtener la función de transferencia del filtro digital deseado H(z) reemplazando s en la función de transferencia de frecuencia escalada H’(s) como sigue:
1 1 +
= − z s z
2.2.2.2 Características de los filtros analógicos clásicos.
Filtro Butterworth.
El filtro pasa bajas Butterworth está caracterizado por la siguiente respuesta en frecuencia de magnitud cuadrada:
( )
Np p
H 2 2
1 1
+
= ω
ω ω (2.29)
donde N es el orden del filtro y ωpp es la frecuencia de corte a 3 dB del filtro pasa bajas (para el filtro prototipo normalizado, ωpp =1). El orden del filtro N está dado por
−
−
≥
p p p s A A
p s
N
ω log ω 2
1 10
1 log 10
10 10
(2.30)
donde Ap y As son, respectivamente, el rizo en la banda de paso y la atenuación en la banda de rechazo en dB, y ωsp es la frecuencia de borde en la banda de rechazo.
La función de transferencia del filtro analógico Butterworth normalizado, H(s), contiene ceros en infinito y polos, los cuales están espaciados uniformemente en un círculo unitario en el plano s en las siguientes ubicaciones [1]:
( )
( ) ( )
,2 1 sin 2
2 1 cos 2
2 / 1
2
+ −
+
+ −
=
= + −
N N j k
N N e k
sk jπ k N N π π
k = 1, 2,. . ., N (2.31)
Los polos ocurren en pares de complejos conjugados y caen en el lado izquierdo del plano s.
Filtro Chebyshev.
La característica Chebyshev provee una manera alternativa para obtener una función de transferencia adecuada H(s). Las características del filtro Chebyshev tipo I se muestran en la figura 2.5, con rizo equitativo en la banda de paso y sin variación en la banda de rechazo.
Los filtros Chebyshev tipo I están caracterizados por la respuesta en magnitud cuadrada:
( )
CN(
p)
H K
ω ω ω ε
′ + ′
′ 2 = 2 2
1 (2.32a)
donde CN
(
ω′ω′p)
es un polinomio Chebyshev el cual exhibe en rizo equitativo en la banda de paso, N es el orden del polinomio así como del filtro, y ε determina el rizo en la banda de paso, el cual en decibeles está dado por( ) (
p)
paso de banda la en
rizo ≤10log101+ε2 =−20log10 1−δ (2.32b)
El orden del filtro N está dado por
−
−
≥
−
−
p p p s A A
p s
N
ω
1 ω
10 1 10
cosh
1 10
1 cosh 10
(2.33)
donde Ap y As son, respectivamente, el rizo en la banda de paso y la atenuación en la banda de rechazo en dB, y ωsp es la frecuencia de borde en la banda de rechazo [1].
Los polos del LPF Chebyshev normalizado yacen sobre una elipse en el plano s y tienen coordenadas dadas por
( ) ( )
k( ) ( )
kk j
s =sinh α cos β + coshα sin β (2.34)
donde
( )
k NN N k
N k , 1,2, ,
2 1
; 2 sinh 1
1 1
= K
−
= +
= − β π
α ε
2.2.3 Cálculo de los coeficientes del filtro IIR por mapeo de polos y ceros en el plano s.
El procedimiento para calcular los coeficientes IIR por mapeo de polos y ceros en el plano s al plano z se resume a continuación [1].
Paso 1.
El diseñador comienza con un filtro pasa bajas prototipo normalizado de orden N del tipo Butterworth o Chebyshev tipo I, dependiendo de los requerimientos del diseño. Los polos
del LPF normalizado se obtienen de las ecuaciones (2.31) y (2.34) para filtros Butterworth o Chebyshev, respectivamente.
Para los filtros Butterworth y Chebyshev tipo I, los ceros para el LPF prototipo se localizan en infinito. En general, la ubicación de los ceros del LPF normalizado son más fáciles de determinar que los polos.
En casos donde el LPF prototipo no exista, se deben transformar las frecuencias críticas o de borde del filtro digital como se describe en la sección (2.2.2.1) [1].
Paso 2.
Los polos y ceros del LPF analógico normalizado son convertidos para un LP, HP, BP o BSF usando una transformación adecuada de las ecuaciones (2.28a) a (2.28d).
Filtros pasa bajas y pasa altas.
Para un filtro digital pasa bajas o pasa altas, los N-polos del LP normalizado son transformados como sigue:
N k
s
sl,k = l,k ω′p =1,2,K, LP2LP (2.35a) N
k s
sh,k =ω′p l,k =1,2,K, LP2HP (2.35b)
donde ω′ es la frecuencia de borde en la banda de paso deseada, sp l,k son los polos del LPF analógico y sh,k son los polos del HPF analógico.
Para los filtros clásicos – Butterworth y Chebyshev tipo I – las transformaciones de las ecuaciones (2.35a) y (2.35b) mapean los ceros del LPF prototipo hacia el eje imaginario del plano s. Los ceros del filtro prototipo están en infinito. En cualquier caso, las transformaciones mapean los ceros de infinito a infinito (para filtros pasa bajas) o de infinito al origen (para filtros pasa altas), como se muestran en las figuras 2.6(a)(ii) y 2.6(b)(ii).