9 Filtros FIR y fase lineal: magnitud y fase por separado
9.1 La idea, en una frase
Imagina un cristal ópticamente perfecto: no añade color, no inventa nada, solo deja pasar la luz —a lo sumo la desplaza un instante—. En el procesamiento de señales existe un filtro con esa misma vocación de honestidad, uno capaz de reequilibrar las frecuencias de una señal sin torcer un ápice su forma en el tiempo. Donde el biquad tenía memoria de sí mismo —una cola de realimentación que nunca terminaba de apagarse—, este filtro renuncia por completo a ese eco: solo mira una ventana finita del pasado de la entrada, la pondera y la suma. Nada más. Esa renuncia le cuesta cómputo, pero le abre la puerta a algo que la realimentación le negaba para siempre.
Un filtro FIR (respuesta al impulso finita) no tiene realimentación: su salida es solo una suma ponderada de las últimas muestras de entrada —una convolución con sus \(N\) coeficientes, que son literalmente su respuesta al impulso—:
\[ y[n] = \sum_{k=0}^{N-1} h[k]\, x[n-k], \qquad H(e^{j\omega}) = \sum_{n=0}^{N-1} h[n]\, e^{-j\omega n}. \]
donde:
- \(y[n]\) — muestra de salida en el instante \(n\)
- \(x[n]\) — muestra de entrada
- \(h[k]\) — coeficientes del filtro (su respuesta al impulso)
- \(N\) — número de coeficientes (longitud del filtro)
- \(k\), \(n\) — índices de muestra
- \(\omega\) — frecuencia angular normalizada [rad/muestra]
- \(H(e^{j\omega})\) — respuesta en frecuencia
Ese es el precio; esta es la recompensa. Si sus coeficientes son simétricos (\(h[n]=h[N-1-n]\)), su fase es exactamente lineal: ninguna otra estructura de fase mínima, ningún IIR, puede prometer lo mismo. Y lo notable es de dónde sale esa promesa. Una simetría puramente geométrica —que la respuesta al impulso se vea igual leída de izquierda a derecha que de derecha a izquierda— se traduce, sin más, en que todas las frecuencias se retardan exactamente lo mismo. Hay un eco aquí de una idea que recorre toda la física: cada simetría esconde una ley de conservación. La forma de onda, entonces, no se deforma; solo se retrasa, íntegra, como quien la desliza en el tiempo sin tocarla. Ese retardo común tiene un origen casi inquietante: el centro de la respuesta simétrica es su instante “presente”, de modo que el filtro, para actuar, necesita esperar a haber visto un trozo del futuro de la señal —una mirada adelantada que en tiempo real solo se compra con latencia.
Todo lo demás es aprender a tallar esa respuesta al impulso. Diseñar un FIR paso-bajos es, en esencia, tomar la respuesta ideal (un sinc infinito, que se extiende sin fin hacia el pasado y hacia el futuro) y recortarla con una ventana para volverla finita y realizable. Cuántos coeficientes uses y qué ventana elijas deciden el compromiso central del diseño: lo abrupta que puede ser la transición frente a cuánto rizado estás dispuesto a tolerar. Magnitud y fase dejan de estar atadas —puedes gobernar cada una casi por separado—, y esa libertad, junto con la fase lineal, es lo que hace de los FIR la herramienta de precisión de este oficio.
La fase lineal se paga con latencia: un FIR simétrico de \(N\) coeficientes retarda la señal \((N-1)/2\) muestras, siempre. Magnitud perfecta y fase perfecta, a cambio de retardo.
Diseña tú un paso-bajos. Fíjate en la simetría de la respuesta al impulso (izquierda) y en cómo la respuesta en frecuencia (derecha) se hace más abrupta al añadir coeficientes:
Con la ventana Rectangular verás un rizado marcado (las ondulaciones de Gibbs del capítulo de Fourier, aquí en frecuencia); cámbiala a Hann o Blackman y el rizado se desploma… a cambio de una transición más suave. Ese es el compromiso del diseño por ventana.
9.2 Diseño por ventana: el compromiso
El paso-bajos ideal es un sinc infinito, \(h_{\text{id}}[n] = 2f_t\operatorname{sinc}(2f_t(n-c))\) con \(f_t = f_c/f_s\). Para realizarlo se trunca multiplicándolo por una ventana \(w[n]\); en frecuencia, truncar es convolucionar con el espectro de la ventana, y por eso la ventana lo gobierna todo. La rectangular tiene el lóbulo principal más estrecho (transición abrupta) pero lóbulos laterales altos que dejan rizado; Hann y Blackman los hunden a costa de ensanchar la transición:
| Ventana | Lóbulo lateral | Rechazo de banda | Ancho de transición |
|---|---|---|---|
| Rectangular | −13 dB | ~21 dB | más estrecho (×1) |
| Hann | −31 dB | ~44 dB | medio (×~3) |
| Blackman | −58 dB | ~74 dB | ancho (×~5) |
Un aparte que humaniza la tabla: las ventanas son apellidos. La “Hann” honra a Julius von Hann, un meteorólogo austríaco del siglo XIX cuyo suavizado de datos climáticos terminó procesando audio (el nombre “Hanning”, tan extendido, nació de un error de conjugación en un informe de Bell Labs — un gazapo convertido en estándar). Richard Hamming y Ralph Blackman eran matemáticos de Bell Labs puliendo justamente ese informe, y James Kaiser —también de Bell— cerró la familia con una ventana ajustable y la fórmula de diseño que verás más abajo. Medio siglo de procesamiento de señales cabe en los apellidos de una tabla.
Un FIR de \(N\) coeficientes tiene respuesta en frecuencia \[ H(e^{j\omega}) = \sum_{n=0}^{N-1} h[n]\, e^{-j\omega n}. \] Si los coeficientes son simétricos, \(h[n] = h[N-1-n]\), puede factorizarse como \[ H(e^{j\omega}) = A(\omega)\, e^{-j\omega (N-1)/2}, \]
donde:
- \(A(\omega)\) — amplitud real (con signo) del filtro [adimensional]
- \(\omega\) — frecuencia angular normalizada [rad/muestra]
- \(N\) — número de coeficientes
con \(A(\omega)\) real. La fase \(\phi(\omega) = -\omega(N-1)/2\) es una recta: su pendiente es un retardo constante \(\tau = (N-1)/2\) muestras, el retardo de grupo \(-\,d\phi/d\omega\). Este es el sentido preciso de “fase lineal”: retardo de grupo constante, ninguna frecuencia adelanta o atrasa respecto a otra [1].
El paso-bajos ideal tiene respuesta al impulso \[ h_{\text{id}}[n] = 2 f_t \,\operatorname{sinc}\!\bigl(2 f_t (n - c)\bigr), \qquad f_t = f_c/f_s,\quad c = \tfrac{N-1}{2}, \]
donde:
- \(h_{\text{id}}[n]\) — respuesta al impulso del paso-bajos ideal
- \(f_t\) — frecuencia de corte normalizada (fracción de \(f_s\)) [adimensional]
- \(f_c\) — frecuencia de corte [Hz]
- \(f_s\) — frecuencia de muestreo [Hz]
- \(c\) — centro de simetría [muestras]
- \(n\) — índice de muestra
- \(N\) — número de coeficientes
un sinc infinito y no causal. Para realizarlo se trunca y se centra, lo que equivale a multiplicarlo por una ventana \(w[n]\): \[ h[n] = h_{\text{id}}[n]\, w[n] \quad\Longleftrightarrow\quad H(e^{j\omega}) = H_{\text{id}} \circledast W(e^{j\omega}). \]
donde:
- \(h[n]\) — respuesta al impulso truncada (realizable)
- \(w[n]\) — ventana de truncamiento
- \(W(e^{j\omega})\) — espectro de la ventana
- \(H_{\text{id}}\) — respuesta en frecuencia del filtro ideal
- \(\circledast\) — convolución (circular, en frecuencia)
En frecuencia, truncar es convolucionar con el espectro de la ventana: por eso la ventana gobierna el resultado. La ventana rectangular tiene el lóbulo principal más estrecho (transición abrupta) pero lóbulos laterales altos (−13 dB) que producen el rizado de Gibbs; Hann y Blackman rebajan esos lóbulos a −31 dB y −58 dB a costa de ensanchar la transición [2], [3].
El ancho de la transición escala como \(\Delta\omega \propto 1/N\): más coeficientes, transición más estrecha (lo ves al subir \(N\) en el widget). Y para una plantilla dada de rizado y transición, el orden necesario lo estima la fórmula de Kaiser \[ N \approx \frac{-20\log_{10}\sqrt{\delta_p \delta_s} - 13}{2{,}285\,\Delta\omega} + 1, \]
donde:
- \(N\) — número de coeficientes (orden + 1)
- \(\delta_p\) — rizado de la banda de paso [adimensional]
- \(\delta_s\) — rizado de la banda de rechazo [adimensional]
- \(\Delta\omega\) — ancho de la transición normalizado [rad/muestra]
El diseño óptimo en sentido minimax (rizado equirrizado) se obtiene con el algoritmo de Parks-McClellan, que mejora al método por ventana para plantillas exigentes [1].
9.3 FIR vs. IIR: cuándo cada uno
Un FIR no es más que una convolución (del capítulo de convolución): la señal se convoluciona con los coeficientes, que son literalmente su respuesta al impulso. Frente al biquad IIR:
| IIR (biquad) | FIR de fase lineal | |
|---|---|---|
| Fase | no lineal (retardo de grupo variable) | lineal (retardo constante) |
| Cómputo | muy bajo (5 coeficientes) | alto (\(N\) coeficientes) |
| Latencia | ~0 | \((N-1)/2\) muestras, siempre |
| Pendiente fuerte a baja \(f\) | fácil | exige \(N\) enorme (miles) |
| Uso típico | EQ, refuerzo en vivo | mastering, corrección de sala, crossovers de estudio |
La diferencia de fase es visible y es la razón de ser del FIR. Con la misma magnitud paso-bajos, el FIR simétrico mantiene el retardo de grupo plano (todas las frecuencias salen juntas) mientras que el IIR lo dispara cerca del corte:
Es exactamente la disyuntiva que dejamos abierta en el capítulo de crossovers.
Un FIR de \(N\) coeficientes cuesta \(\mathcal{O}(N)\) multiplicaciones por muestra (o \(\mathcal{O}(\log N)\) con convolución rápida por FFT, del capítulo de convolución) y añade \((N-1)/(2 f_s)\) segundos de latencia. Para una pendiente pronunciada a baja frecuencia, \(N\) puede ser de miles: un biquad IIR logra lo mismo con 5 coeficientes y latencia casi nula, al precio de la fase. La elección FIR/IIR es, en definitiva, latencia y cómputo contra linealidad de fase.
9.4 El lado oscuro: el pre-eco
La fase lineal tiene un precio que no aparece en ninguna curva de magnitud, y conviene oírlo antes de enamorarse. Vuelve a la simetría: si la respuesta al impulso debe verse igual hacia adelante que hacia atrás, entonces todo lo que el filtro hace después del golpe, lo hace también antes. La campana del IIR suena y se apaga — como cualquier objeto físico. La del FIR simétrico se enciende en reversa, crece hasta el golpe y luego se apaga: la señal empieza a sonar antes del transitorio. Ese susurro anticipado es el pre-eco (pre-ringing), y el oído lo delata con saña precisamente porque ningún sonido de la naturaleza lo produce: llevamos toda la evolución escuchando un mundo causal, donde primero pasa la cosa y después su cola. Un golpe que se anuncia suena, literalmente, a fantasma:
Fíjate en la aritmética del fantasma: crece justo cuando el FIR se vuelve ambicioso. Una transición estrecha exige una respuesta al impulso larga (la incertidumbre tiempo–frecuencia del capítulo 4), y una respuesta larga y simétrica pone media cola —cada vez más larga y audible— delante del golpe. Por eso el pre-eco muerde donde más duele: filtros abruptos en frecuencias bajas, exactamente donde el FIR parecía la solución elegante.
Y la salida de emergencia que pocos conocen: la fase lineal es una elección, no una propiedad del FIR. Un FIR de fase mínima entrega la misma magnitud con los coeficientes reordenados sin simetría: toda la cola después del golpe (como un IIR), cero pre-eco y una fracción de la latencia, a cambio de renunciar al retardo de grupo plano. Los procesadores modernos de sistemas ofrecen ambas variantes por una razón: magnitud, fase, latencia y pre-eco son cuatro platillos de la misma balanza, y el diseño consiste en elegir cuál sacrificar.
9.5 La rutina: ¿FIR o IIR?
La decisión de campo, en orden — cada paso puede terminar la discusión:
- Presupuesto de latencia primero (capítulo 7). ¿Es una vía de monitores o in-ears? IIR, y no se hable más: los \((N-1)/2f_s\) milisegundos del FIR no caben ahí.
- ¿Qué estás corrigiendo? Balance tonal, una resonancia, un realce: la magnitud basta → IIR (capítulo 8). ¿Cruces entre vías, suma de sistemas, corrección global donde la fase gobierna el resultado? El FIR entra en la conversación.
- Dimensiona antes de prometer: con la fórmula de Kaiser estima \(N\) para tu transición, y convierte: latencia \(=(N-1)/2f_s\). Si el número no cabe en el presupuesto del paso 1, vuelve al IIR o relaja la plantilla.
- Prueba con transitorios: bombo, caja, palmas — el material que delata el pre-eco. Si el fantasma se oye, considera la variante de fase mínima o una transición más suave.
- Mide el resultado (capítulo 18): la promesa del FIR es visible — la fase debe salir plana en la traza. Si no lo puedes medir, no lo puedes cobrar.
Los errores clásicos: fase lineal en monitores (20 ms de regalo a un cantante que se oye por conducción ósea); el brickwall en 80 Hz “porque el software puede” (N gigante, pre-eco audible y latencia de radio AM); y el más conceptual: creer que fase lineal = mejor. La fase mínima es lo que hace la física entera —cada altavoz, cada sala, cada instrumento—; la fase lineal es una herramienta de precisión para los puntos exactos donde la suma la necesita.
9.6 Lecturas adicionales
9.7 Ejercicios
- En el widget, fija \(N=41\) y compara Rectangular vs. Blackman: mide (a ojo) el rizado de la banda de rechazo y el ancho de la transición. Relaciónalo con los lóbulos de cada ventana.
- Demuestra que \(h[n]=h[N-1-n]\) implica \(H(e^{j\omega})=A(\omega)e^{-j\omega(N-1)/2}\) con \(A\) real, y deduce el retardo de grupo.
- Estima con la fórmula de Kaiser cuántos coeficientes hacen falta para un paso-bajos a 100 Hz (\(f_s=48\) kHz) con transición de 20 Hz y 60 dB de rechazo. Comenta la latencia resultante.
- En el widget del pre-eco, compara 801 vs. 4001 coeficientes. ¿Por qué el fantasma crece con \(N\)? Relaciónalo con la incertidumbre tiempo–frecuencia y con la simetría.
- Explica por qué un FIR de fase mínima con la misma magnitud no tiene pre-eco ni el retardo \((N-1)/2\), y qué pierde a cambio. ¿En qué punto del sistema preferirías cada variante?