filtro de reconstrucción: ¿cómo funciona realmente?

8

Estoy tratando de formar mi propio entendimiento sobre la guerra religiosa en torno al uso de 192 kHz como frecuencia de muestreo para la reproducción (Internet parece tener una gran cantidad de material en ambos lados). Me cuesta entender cómo funcionan los filtros de reconstrucción.

El teorema de muestreo de Nyquist-Shannon , a menudo citado por el campamento anti-192, básicamente establece que una frecuencia de muestreo de 44,1 kHz es suficiente para reconstruir sin pérdida una señal de banda limitada de 20 kHz. Sin embargo, al observar la fórmula de interpolación de Whittaker-Shannon , me parece que un filtro de reconstrucción ideal debería tener acceso a todas las muestras , es decir, todas las muestras pasadas y futuras.

No soy un experto en audio analógico, pero dudo que se pueda construir un dispositivo así. Supongo que, en el mejor de los casos, se puede introducir un retraso para "esperar" a que lleguen suficientes muestras futuras, de modo que la contribución de las muestras futuras no disponibles al instante de salida actual sea insignificante.

¿Alguien puede explicar cómo funcionan los filtros de reconstrucción prácticos y cuáles son sus compensaciones? ¿Existe un límite teóricamente más estricto para el teorema de Nyquist-Shannon si solo hay una ventana de muestras disponible o si la latencia de reconstrucción es inaceptable?

usuario1202136
fuente

Respuestas:

1

Al permitir un aumento en el retraso introducido por un filtro de sobremuestreo digital, las otras características del filtro, la banda de paso y la ondulación de la banda de detención y el ancho de la banda de transición se pueden mejorar para que sean arbitrariamente cercanas a cero. El factor de sobremuestreo se puede aumentar para ampliar la banda de detención y para relajar los requisitos del filtrado analógico, lo que da como resultado una mayor complejidad computacional pero no un aumento significativo en el tiempo de retraso introducido por el filtro.

Los DAC de audio generalmente tienen un filtro de sobremuestreo digital seleccionable entre un filtro de baja demora (latencia) y un filtro de respuesta de frecuencia nítida. El filtro de bajo retardo puede ser un filtro de fase mínima o un compromiso sintonizado psicoacústicamente entre baja dispersión (algunas frecuencias se retrasan más que otras) y un bajo retardo efectivo. El filtro de caída brusca es típicamente un filtro de fase lineal con una respuesta de impulso simétrica y una ondulación máxima especificada en la banda de paso y en la banda de parada. Este tipo de especificación es fácil de expresar en una hoja de datos e incorporar en un diseño de sistema. Los filtros de fase lineal equiripple comparables se pueden diseñar en Octave usando remez, aquí con el mismo peso de banda de paso y onda de stop:

pkg load signal
x2x = []; x4x = [];
for n = [16:86]
  b2x = remez(2*n, [0, 20/44.1, (44.1-20)/44.1, 1], [1, 1, 0, 0], [1, 1], "bandpass", 128);
  b4x = remez(2*n, [0, 20/(44.1*2), (44.1-20)/(44.1*2), 1], [1, 1, 0, 0], [1, 1], "bandpass", 128);
  [h2x, w2x] = freqz(b2x); [h4x, w4x] = freqz(b4x);
  x2x = [x2x; (length(b2x)-1)/2/2, 20*log10(abs(h2x(end)))];
  x4x = [x4x; (length(b4x)-1)/2/4, 20*log10(abs(h4x(end)))];
endfor
plot(x2x(:,1), x2x(:,2), "x", x4x(:,1), x4x(:,2), "x", 29.2, -100, "x", 39.5, -110, "x", 43.3828125, -110, "x")
xlabel("group delay / f_s");
ylabel("stop band ripple (dB)");
text(29.2-2, -100-4, "AK4499");
text(39.5-2, -110+4, "CS43198");
text(43.3828125-2, -110-4, "AD1955");
grid on

El guión diseña varios filtros de orden (limitados por lo que remezpuede manejar sin problemas numéricos) para una banda de paso de 0 a 20 kHz y una banda de parada que comienza en 24.1 kHz, para operar en una pequeña selección de frecuencias de muestreo de sobremuestreo de 2 y 4 veces la frecuencia de muestreo de 44.1 kHz, y grafica (Fig.1) las características de ondulación de la banda de parada junto con las de filtros digitales de sobremuestreo equivalentes de DAC de audio insignia de Asahi Kasei ( AK4499 ), Dispositivos analógicos ( AD1955 ) y Cirrus Logic ( CS43198 ).

ingrese la descripción de la imagen aquí
Figura 1. Banda de parada y ondulación de banda de paso para remezfiltros digitales de paso bajo de fase lineal de sobremuestreo 2x (azul) y 4x (naranja) con pesos de banda de paso y parada iguales, en función de la media longitud de respuesta al impulso en unidades de período de muestreo a la frecuencia de muestreo 1x de 44,1 kHz. También se trazan las cifras de rendimiento de ondulación de la banda de parada para una selección de filtros de sobremuestreo DAC con la ondulación de la banda de paso correspondiente especificada como 5 × 10 ^ -3 dB para el filtro digital de sobremuestreo 8x de AK4499, 10 ^ -2 dB para el digital combinado y filtro analógico de CS43198 y 2 × 10 ^ -4 dB para el filtro digital de sobremuestreo 8x de AD1955. Todos los filtros comparados aquí tienen límites de banda de transición idénticos: 20 kHz a 24,1 kHz.

Para la frecuencia de muestreo de 44.1 kHz, la Fig. 1 ofrece un límite inferior en el rendimiento del filtro digital de sobremuestreo de fase lineal como función del retraso introducido por el filtro, cuando la banda de paso y la onda de parada de banda están igualmente ponderadas. Este límite no depende significativamente de la relación de sobremuestreo. Los fabricantes de DAC pueden elegir una ponderación diferente, por ejemplo, para obtener una ondulación de banda de parada más baja al aumentar la ondulación de la banda de paso, como en el caso de AK4499. También pueden optimizar los filtros por otros criterios que no sean equiripple estrictos. Por ejemplo, el filtro puede incluir una compensación por la atenuación de altas frecuencias por los circuitos analógicos (retención de orden cero, filtros RC, etc.), y las características de retardo del filtro pueden verse afectadas por el uso de una implementación de velocidad múltiple computacionalmente eficiente.

Podemos observar más de cerca el filtro de más alto rendimiento de la Fig. 1 que proviene remez(2*86, [0, 20/44.1, (44.1-20)/44.1, 1], [1, 1, 0, 0], [1, 1], "bandpass", 128), trazando su respuesta al impulso (Fig. 2) y la respuesta de frecuencia usando freqz(Fig. 3):

ingrese la descripción de la imagen aquí
Figura 2. Respuesta de impulso del filtro de sobremuestreo 2x de fase lineal de mayor rendimiento de remez.

ingrese la descripción de la imagen aquí
Figura 3. Respuesta de frecuencia del filtro de sobremuestreo 2x de fase lineal de mayor rendimiento de remez.

Sería más interesante mirar 8x filtros de sobremuestreo, pero remezfalla error: remez: insufficient extremals--cannot continue.

Olli Niemitalo
fuente
ya sabes; cuando algo (sistema de audio) suena realmente bien, ¡entonces su explicación (hoja de datos) debe hacerlo aún mejor! .. :-) Así es como lo hacen en la industria del audio comercial ... ;-))
Fat32
¡Guauu! Necesito volver a leer su respuesta varias veces más para procesarla por completo. ¡Buen trabajo! Solo para confirmar que lo comprendo, ¿un DAC de alta calidad con sobremuestreo digital presenta un retraso de 0.6-1ms a una frecuencia de muestreo de 44.1kHz?
user1202136
@ user1202136 sí, eso es correcto, si se selecciona el filtro de caída aguda.
Olli Niemitalo
4

El teorema de muestreo requiere una señal perfectamente limitada en banda, limitada a menos del doble de la frecuencia de muestreo. El problema con esto es que solo una señal de longitud infinita (p. Ej., Existe antes del Big Bang) puede ser perfectamente limitada en banda. Esto es del teorema de Fourier con respecto a cualquier dominio con soporte finito.

Por lo tanto, todas las señales del mundo real están imperfectamente limitadas en la banda, limitadas por la duración de la sesión de grabación y la duración de la respuesta al impulso del filtrado de paso bajo utilizado antes del muestreo (por ejemplo, limitación de banda imperfecta). Por lo tanto, debe asumir un nivel de ruido finito debido al alias de muestra. Por lo tanto, su reconstrucción tampoco necesita ser mejor que este piso de ruido. Por lo tanto, puede abrir la fórmula de reconstrucción perfecta a una duración finita razonable. Para el audio, este ancho de ventana puede limitarse al orden de un pequeño múltiplo del período de la frecuencia audible más baja, ya que las cosas antes y después de eso no pueden afectar significativamente la percepción del tono audible (otras cosas, como el enmascaramiento y el umbral adaptativo , etc., probablemente dominen).

La ventaja de las frecuencias de muestreo muy altas es que las frecuencias con alias (debido al filtrado imperfecto de muestreo previo y la reconstrucción posterior al muestreo) son aún más altas, y es mucho menos probable que sean captadas por un micrófono físico o pasen con una magnitud significativa (arriba el piso de ruido térmico, etc.) a través de los filtros anti-aliasing. Como se detalla en otras respuestas, esto también permite que los filtros físicamente realizables sean más planos y tengan una respuesta de fase más lineal en una banda de paso genérica de 20-20k, y una caída más cercana a la mitad de la frecuencia de muestreo.

hotpaw2
fuente
La relación sugerida entre el ancho de la ventana y la frecuencia audible más baja es pura coincidencia, ¿verdad?
Olli Niemitalo
2

Una respuesta rápida, pero como la audición humana no supera el ancho de banda de 20 kHz, 44,1 kHz es suficiente para almacenar y transmitir audio. El problema es que el filtro antialiasing analógico antes del ADC debe ser extremadamente nítido para pasar 20 kHz lo suficiente y bloquear 22.05 kHz lo suficiente, y esto solo necesita muchos componentes con buen rendimiento y tolerancia. Cuando se muestrea a una velocidad más alta, como 192 kHz, el filtro analógico puede ser más simple y económico, ya que tiene una banda de transición mucho más amplia, necesita pasar 20 kHz y bloquearse a 96 kHz. La conversión de velocidad y el filtrado de paso bajo se pueden hacer digitalmente para tener un corte nítido sin alias. Lo mismo al reproducir audio, muestrear y reconstruir digitalmente la señal a 192 kHz para la reproducción y el filtro analógico de salida DAC puede ser barato y simple. El filtro de reconstrucción solo debe ser lo suficientemente bueno como para que no haya mucha imagen espectral con alias después del ancho de banda de audio de 20 kHz y el filtro analógico elimine las imágenes espectrales reales de la tasa DAC. Por lo tanto, tiene sentido usar velocidades más altas en ADC y DAC, y tal vez dominar el audio, pero transmitir y almacenar frecuencias que solo los perros y los murciélagos pueden escuchar solo cuesta más, sin mencionar los equipos (amplificadores, parlantes) que son capaces de producirlos. sin problemas Entonces, básicamente, una muestra digital es solo un impulso infinitamente estrecho y los impulsos repetidos a la frecuencia de muestreo crean las imágenes espectrales que deben ser filtradas por un filtro de reconstrucción que simplemente deja intacta la señal de banda base deseada. Por lo tanto, tiene sentido usar velocidades más altas en ADC y DAC, y tal vez dominar el audio, pero transmitir y almacenar frecuencias que solo los perros y los murciélagos pueden escuchar solo cuesta más, sin mencionar los equipos (amplificadores, parlantes) que son capaces de producirlos. sin problemas Entonces, básicamente, una muestra digital es solo un impulso infinitamente estrecho y los impulsos repetidos a la frecuencia de muestreo crean las imágenes espectrales que deben ser filtradas por un filtro de reconstrucción que simplemente deja intacta la señal de banda base deseada. Por lo tanto, tiene sentido usar velocidades más altas en ADC y DAC, y tal vez dominar el audio, pero transmitir y almacenar frecuencias que solo los perros y los murciélagos pueden escuchar solo cuesta más, sin mencionar los equipos (amplificadores, parlantes) que son capaces de producirlos. sin problemas Entonces, básicamente, una muestra digital es solo un impulso infinitamente estrecho y los impulsos repetidos a la frecuencia de muestreo crean las imágenes espectrales que deben ser filtradas por un filtro de reconstrucción que simplemente deja intacta la señal de banda base deseada.

Solo yo
fuente
"Lo mismo al reproducir audio, muestrear y reconstruir digitalmente la señal a 192 kHz para la reproducción": es aquí donde me cuesta entender. Digamos que es su salida muestreada a 192kHz es su entrada de 48kHz. Para calcular exactamente , ¿no necesitas saber todo ? En caso afirmativo, ¿cómo sube la muestra en tiempo real, cuando no conoce muestras de entrada más allá de ? y[4n]x[n]y[j]x[i],i=0,nj/4
user1202136
1
Los filtros digitales bien realizables no pueden ver el futuro, por lo que son causales y funcionan solo con muestras presentes y pasadas. Por lo tanto, un filtro FIR simétrico con N derivaciones tiene un retraso de N / 2 derivaciones. Y el filtro tiene una cantidad razonable de toques, solo lo suficiente como para tener un filtrado suficiente dentro de la tolerancia especificada. O podría ser un filtro IIR. O biquad. O múltiples filtros en cascada. O sin filtro, simplemente agregue ceros entre muestras reales y deje que el filtro analógico haga el trabajo.
Justme
2

Teniendo en cuenta las aplicaciones de audio básicas, el filtro de reconstrucción de conversión de digital a analógico (también conocido como filtro de interpolación) es un filtro analógico de paso bajo que elimina todo el espectro de imagen en la salida antes de ir a los altavoces y retiene solo el espectro de banda base que reside en la banda de paso del filtro : dentro de su frecuencia de corte del filtro de paso bajo. Tenga en cuenta que el altavoz en sí mismo también es una parte importante de las características del filtro de paso bajo de reconstrucción, y los filtros ideales se pueden relajar lo suficiente en condiciones adecuadas.

Idealmente, esta banda de paso (o frecuencia de corte) del filtro de interpolación debe seleccionarse de acuerdo con la frecuencia de muestreo de entrada de la señal digital. Si la señal original se muestreó adecuadamente a 44,1 kHz sin alias, entonces, en condiciones normales (suponiendo que no haya conversión de frecuencia de muestreo dentro del sistema), la frecuencia de muestreo DAC de salida y las frecuencias de corte de filtro de interpolación asociadas deben seleccionarse como 44,1 kHz y 22,05 kHz respectivamente.

Si la entrada se muestreó a 96 kHz, entonces la frecuencia DAC de reconstrucción de salida debería ser de 96 kHz y el filtro de reconstrucción debería tener una frecuencia de corte de 48 kHz, etc. Tenga en cuenta que la teoría utiliza impulsos ideales y filtros ideales para describir cosas ( como hice anteriormente), pero el práctico circuito DAC utiliza retención de orden cero en la salida y filtros prácticos.

Tenga en cuenta que si hay una falta de coincidencia entre las velocidades de muestreo de entrada y salida, entonces la velocidad de reproducción no coincidirá con la velocidad de grabación. Además, si elige una frecuencia de corte más baja que el mínimo necesario, que es la frecuencia de Nyquist de la frecuencia de muestreo de DAC de salida, entonces estará arrojando el espectro de señal. Además, si elige la frecuencia de corte del filtro de interpolación mayor que la frecuencia de Nyquist, tendrá una distorsión de la imagen en la salida de audio.

solo una de las guerras religiosas en audio digital es acerca de si la frecuencia de muestreo de 96 kHz en la entrada es realmente necesaria o no. Y el consenso (?) Es que, no es necesario, basado en pruebas empíricas realizadas tantas veces. Pero los auidófilos son libres de elegir sus tasas de muestreo favoritas de todos modos.

Grasa32
fuente
"Tenga en cuenta que la teoría utiliza impulsos ideales y filtros ideales para describir las cosas (como lo hice anteriormente), pero los circuitos DAC prácticos usan retención de orden cero en la salida y filtros prácticos". Acercarse a esta oración, ¿no significa eso que el uso de filtros no ideales en la etapa DAC conduce a una reconstrucción imperfecta de la entrada analógica muestreada? En otras palabras, ¿el uso de un filtro no ideal "eleva" la tasa de Nyquist? (Estoy comprando totalmente los argumentos empíricos del campo anti-192, pero tengo la sensación de que hay una brecha en el argumento teórico sobre el teorema de Nyquist-Shannon con fil no ideal
usuario1202136
1
La respuesta teórica es como se indicó anteriormente. Llegando al argumento práctico; Es cierto que para facilitar el diseño de filtros analógicos (corte preciso), se puede utilizar un sobremuestreo de la entrada (y la salida de los mismos). Y sí, se espera que dicho sistema produzca audio menos distorsionado. Pero no hay nada psicoacústico aquí. Solo filtra el diseño. El argumento sobre si el contenido por encima de 20 kHz está agregando algún valor al audio (audible o relevante) es, que yo sepa, no . Por lo tanto, se beneficiaría de la facilidad de diseño del filtro, puede obtener una salida ligeramente menos distorsionada. Y eso es bueno.
Fat32
2
Puede ser una sorpresa, pero si el DAC tiene una retención de orden cero, el espectro de salida no es plano, sino que ya está distorsionado por la envolvente sinc. Se llama efecto de apertura. Atenúa las frecuencias altas. Se puede compensar hasta cierto punto con un filtro de reconstrucción analógico que aumenta las frecuencias altas. Una vez más, otra razón para aumentar la muestra de 48 kHz a 192 kHz en el DAC para que el ancho de banda de audio de 20 kHz esté más alejado de la velocidad de muestreo de salida del DAC. Cualquier filtro, analógico o digital, no necesita ser ideal y perfecto, solo lo suficientemente bueno como para que no pueda escuchar no ideales (o medirlos).
Justme
@Simplemente, se sugiere que la respuesta de magnitud sinc invertida corrija la distorsión espectral ... Las tasas de muestreo más altas facilitarían la realización, a costa de una mayor potencia de procesamiento y almacenamiento (o una conversión ascendente / descendente que podría producir más distorsión que ¡el filtro de reconstrucción no ideal funcionaría! ;-))
Fat32