Calculadora de Temporización I2S
Calcula el reloj de bit (BCLK), reloj de palabra (LRCLK) y tasa de datos para interfaces de audio I2S.
Fórmula
Referencia: Philips I2S Bus Specification, 1996
Cómo Funciona
Esta calculadora determina las frecuencias de reloj de I2S y las relaciones de temporización para las interfaces de audio digital. Los ingenieros de audio y los desarrolladores de sistemas integrados la utilizan para configurar los DAC, los ADC y los códecs de audio según la especificación I2S de Philips (ahora NXP). El I2S utiliza 3 señales: datos en serie (SD), reloj de bits (BCLK/SCK) y selección de palabras (WS/LRCLK). La relación fundamental es: BCLK = tasa de muestreo x bits por canal x canales. Para audio con calidad de CD (44,1 kHz, estéreo de 16 bits): BCLK = 44100 x 16 x 2 = 1,4112 MHz. El reloj maestro (MCLK) suele ser 256 o 512 veces mayor que la frecuencia de muestreo, lo que proporciona una referencia PLL interna. La especificación del bus I2S se define en el documento original de Philips Semiconductors titulado «Especificación del bus I2S» (febrero de 1986, revisado en junio de 1996), que ahora mantiene NXP Semiconductors. Los requisitos de frecuencia de muestreo y profundidad de bits de audio para aplicaciones profesionales se rigen por la norma AES3-2009 (estándar AES para audio digital — interfaz de entrada y salida digital) e IEC 60958-1 (interfaz de audio digital). A 96 kHz/24 bits, BCLK = 96000 x 24 x 2 = 4,608 MHz y MCLK = 96000 x 256 = 24,576 MHz. Según la especificación I2S, los datos deben ser estables para t_setup >= 10 ns antes del BCLK rising edge y t_hold >= 10 ns después: con un BCLK de 12,288 MHz, el semiperíodo de 81,4 ns proporciona un margen de 8 veces.
Ejemplo Resuelto
El diseño de un reproductor de audio de alta resolución utiliza un DAC PCM5242 en estéreo de 192 kHz/32 bits con un maestro FPGA. Según la especificación I2S de Philips: BCLK = 192000 x 32 x 2 = 12.288 MHz. MCLK = 192000 x 256 = 49,152 MHz (reloj de audio de cristal estándar). Selección de palabras (LRCLK) = frecuencia de muestreo = 192 kHz. Verifique la temporización en el PCM5242: t_su_data = 5 ns requeridos, t_hd_data = 5 ns requeridos. Período BCLK = 81,4 ns, semiperíodo = 40,7 ns. Tiempo de configuración disponible = 40,7 a 10 ns (tiempo de espera en FPGA) = 30,7 ns, lo que proporciona un margen de 6 veces respecto al requisito de 5 ns. Velocidad de datos = 192000 x 32 x 2 = 12,288 Mbps por canal, 24,576 Mbps en total.
Consejos Prácticos
- ✓Según AES-6id-2006, utilice cristales de reloj de audio dedicados (49,152 MHz, 24,576 MHz, 22,5792 MHz) para frecuencias de muestreo que sean múltiplos de 48 kHz o 44,1 kHz
- ✓Para el funcionamiento en modo maestro, genere primero MCLK y, a continuación, derive BCLK y LRCLK de forma sincrónica para eliminar la fluctuación de cruce del dominio del reloj
- ✓Mantenga las longitudes de rastreo del I2S por debajo de 15 cm para BCLK > 6 MHz para mantener los márgenes de configuración/retención; añada una terminación en serie de 33 ohmios para tiradas más largas
Errores Comunes
- ✗Uso de cristal de 24 MHz para audio de 48 kHz (rendimientos de 24/256 = 93,75 kHz, 95% de error): utilice cristal de 12,288 MHz para 48 kHz exactos (12,288/256 = 48.000 kHz)
- ✗Relación MCLK no coincidente entre maestro y esclavo: la mayoría de los DAC requieren exactamente 256x o 512x, no proporciones arbitrarias
- ✗Enrutamiento de BCLK y LRCLK como señales de un solo extremo a través de cables de más de 30 cm: utilice LVDS o par trenzado para evitar la fluctuación inducida por la diafonía por encima de los 50 ps
Preguntas Frecuentes
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Calculadoras relacionadas
Comms
Temporización SPI
Calcula parámetros de temporización del bus SPI: frecuencia de reloj, modos CPOL/CPHA y tiempos de setup.
Comms
Velocidad de Baudios UART
Calcula el divisor de baudios, velocidad real y error de baudios para interfaces UART/USART.
Signal
SNR de ADC
Calcula el SNR teórico, ENOB y rango dinámico de convertidores analógico-digital (ADC).
Comms
Pull-up I2C
Calcula el valor óptimo de resistencias pull-up para buses I2C según velocidad y capacitancia.