¿Por qué los equipos digitales tienen más latencia que los analógicos?

¿La explicación es que el equipo digital tarda más en propagarse? Por ejemplo, una síntesis de software es muy lenta en comparación con una síntesis de hardware.

Respuestas (3)

Supongo que no se está refiriendo a una discusión filosófica más profunda sobre información, poder y entropía, pero solo está interesado en los aspectos prácticos.

En pocas palabras, los circuitos digitales necesitan medir la entrada, digitalizarla, ejecutarla a través de algún tipo de procesamiento y luego transformar la salida en una señal eléctrica nuevamente. Los circuitos digitales no pueden manipular directamente las señales eléctricas analógicas. Intrínsecamente tiene una latencia adicional debido a la conversión de la señal.

Puede dejar de leer aquí si esto respondió a su pregunta.

Desde un punto de vista más filosófico/físico, en casi todos los circuitos en realidad no estás tratando de manipular la energía eléctrica (eso es lo que hace la electrónica de potencia), pero estás tratando de manipular la información. En este caso, técnicamente no es del todo cierto que lo analógico sea más rápido que lo digital. ¿Por qué? Bueno, las rutas de señales analógicas son procesadores de información no ortogonales: no existe un amplificador operacional perfecto o un búfer perfecto, todo tiene efectos parásitos que necesita filtrar o deshacerse de ellos. Especialmente a velocidades muy altas, se convierte en un verdadero problema incluso construir un cable que transfiera voltaje de manera confiable. El procesamiento digital desacopla el aspecto eléctrico de la información: después de haber digitalizado sus entradas, la señal existe como una forma muy pura de información.

Aunque está penalizado con dos etapas de conversión, entre su ADC y DAC puede emplear muchos trucos de procesamiento para acelerar la velocidad de procesamiento y, por lo general, superar con creces el rendimiento de cualquier procesador de señal puramente analógico. Un gran ejemplo de esto es la revolución de los módems digitales en los teléfonos móviles, que ahora funcionan muy cerca del límite teórico del procesamiento de la información (necesidades de energía de decenas de pJ/bit), mientras que no hace mucho tiempo los módems GSM puramente analógicos requerían órdenes de magnitud. más área de silicio y creo que 5 o 6 órdenes de magnitud más energía de procesamiento.

Los procesos digitales agregan inherentemente una cierta cantidad de latencia, ya que un evento que ocurre entre dos ciclos de reloj no se puede procesar hasta el siguiente y, para evitar problemas con eventos que ocurren muy cerca de los límites del ciclo de reloj, las cosas a menudo se diseñan de modo que los eventos no tendrán efecto hasta el segundo ciclo de reloj después de ellos (tratar de decidir rápidamente si un evento ocurrió antes o después de un límite de ciclo de reloj es a menudo sorprendentemente difícil, incluso si las llamadas cercanas se pudieran decidir con seguridad de cualquier manera; poder posponer el decisión de un ciclo de reloj adicional hace las cosas mucho más fáciles). Sin embargo, eso suele ser solo una pequeña parte de la latencia que se observa en muchos sistemas digitales.

Un factor más importante en la latencia del sistema digital gira en torno al hecho de que, por una variedad de razones, muchos sistemas pueden procesar grandes cantidades de datos de manera más eficiente que los pequeños. Por ejemplo, si bien sería posible grabar un flujo de datos de audio estéreo de 44 KHz interrumpiendo el procesador 88 200 veces por segundo, eso requeriría que el procesador detuviera lo que estaba haciendo 88 200 veces por segundo, guardara todos sus registros, cambiara a la función de interrupción. contexto, tome la muestra, vuelva a cambiar, etc. Incluso la entrada y salida de interrupción toman solo un microsegundo cada una, el sistema gastaría el 22% de su tiempo entrando y saliendo de la interrupción en lugar de hacer algo útil. Si, en cambio, el sistema usara hardware para almacenar en búfer grupos de 512 muestras (256 de cada canal) y notificar al procesador cuando cada grupo estuviera listo,

Tenga en cuenta que tomar grupos de 256 muestras por canal puede no parecer mucho retraso (se trata de unos 6 ms), si la señal pasa a través de varios dispositivos y cada uno induce tal retraso, los retrasos pueden acumularse. Además, si alguna de las etapas por las que pasa la señal utiliza algún tipo de tiempo compartido variable, los retrasos pueden ser variables. Pasar datos de audio en tiempo real a través de un canal que a veces tenía un retraso más largo que otras veces causaba un "gorjeo" o "distorsión" notable cada vez que cambiaba el retraso. Para evitar eso, algunos sistemas etiquetan bloques de datos de audio con una marca de tiempo que indica cuándo fueron capturados, y hacen que el destinatario final de los datos digitales que los convertirá de nuevo a formato analógico los retenga hasta que haya transcurrido una cierta cantidad de tiempo desde que fueron capturados. . Si el destinatario final lo retrasa hasta un segundo después de su captura, las variaciones en el retraso en diferentes partes del viaje no afectarán la salida a menos que sumen más de un segundo. Si se calcula que los retrasos breves aleatorios en la transmisión serán frecuentes pero los retrasos más prolongados serán raros, aumentar el retraso antes de que el destinatario final emita el audio reducirá la frecuencia de las interrupciones audibles, pero también significará que el sonido no se escuchará tan pronto. como podría haberlo hecho de otro modo.

Además, los sistemas digitales tienden a estar cronometrados; de hecho, cuantifican el tiempo, lo que significa que los eventos digitales no se propagan hasta la siguiente hora del reloj.

Técnicamente, y realmente estoy entrando en el área filosófica, los sistemas digitales son solo sistemas que representan datos de manera digital y no necesariamente necesitan ser cronometrados. Todos los procesadores utilizan sincronización, pero, por ejemplo, las FPGA se pueden convertir en ALU instantáneas que operan instantáneamente en sus operandos. La única razón por la que no puede bombear datos a velocidades infinitas es el retraso de propagación, el sesgo y la velocidad de conmutación del transistor.