Timing-Rechner für die I2S-Audioschnittstelle
Berechnen Sie den I2S-Bittakt (BCLK), den Wordclock (LRCLK/WCLK) und die Datenrate für Audio-Interfaces mit beliebiger Samplerate, Bittiefe und Kanalanzahl.
Formel
Referenz: Philips I2S Bus Specification, 1996
Wie es funktioniert
Dieser Rechner bestimmt die I2S-Taktfrequenzen und Zeitbeziehungen für digitale Audioschnittstellen. Audioingenieure und Embedded-Entwickler verwenden ihn zur Konfiguration von DACs, ADCs und Audiocodecs gemäß der Philips I2S-Spezifikation (jetzt NXP). I2S verwendet 3 Signale: serielle Daten (SD), Bittakt (BCLK/SCK) und Wortauswahl (WS/LRCLK). Die grundlegende Beziehung ist: BCLK = Sample_Rate x Bits_per_Channel x Kanäle. Für Audio in CD-Qualität (44,1 kHz, 16-Bit-Stereo): BCLK = 44100 x 16 x 2 = 1,4112 MHz. Der Master-Clock (MCLK) entspricht in der Regel dem 256-fachen oder 512-fachen der Samplerate und dient als interne PLL-Referenz. Die I2S-Busspezifikation ist im Originaldokument „I2S Bus Specification“ von Philips Semiconductors (Februar 1986, überarbeitet im Juni 1996) definiert, das jetzt von NXP Semiconductors verwaltet wird. Die Anforderungen an die Audio-Samplerate und Bittiefe für professionelle Anwendungen werden durch AES3-2009 (AES-Standard für Digitalaudio — digitale Eingangs-/Ausgangsschnittstelle) und IEC 60958-1 (Digitales Audiointerface) geregelt. Bei 96 kHz/24 Bit ist BCLK = 96000 x 24 x 2 = 4,608 MHz und MCLK = 96000 x 256 = 24,576 MHz. Gemäß der I2S-Spezifikation müssen die Daten für t_setup >= 10 ns vor der steigenden BCLK-Flanke und t_hold >= 10 ns danach stabil sein — bei 12,288 MHz BCLK ergibt die Halbperiode von 81,4 ns eine 8-fache Marge.
Bearbeitetes Beispiel
Ein hochauflösendes Audioplayer-Design verwendet einen PCM5242-DAC mit 192 kHz/32-Bit-Stereo mit einem FPGA-Master. Gemäß der Philips I2S-Spezifikation: BCLK = 192000 x 32 x 2 = 12,288 MHz. MCLK = 192000 x 256 = 49,152 MHz (Standard-Audiotaktkristall). Wortauswahl (LRCLK) = Samplerate = 192 kHz. Überprüfen Sie das Timing auf PCM5242: t_su_data = 5 ns erforderlich, t_hd_data = 5 ns erforderlich. BCLK-Periode = 81,4 ns, halbe Periode = 40,7 ns. Verfügbare Einrichtungszeit = 40,7 — 10 ns (FPGA-Clock-to-Out) = 30,7 ns, was einen 6-fachen Spielraum für die Anforderung von 5 ns ergibt. Datenrate = 192000 x 32 x 2 = 12,288 Mbit/s pro Kanal, insgesamt 24,576 Mbit/s.
Praktische Tipps
- ✓Verwenden Sie gemäß AES-6id-2006 spezielle Audiotaktkristalle (49,152 MHz, 24,576 MHz, 22,5792 MHz) für Abtastraten, die ein Vielfaches von 48 kHz oder 44,1 kHz sind
- ✓Generieren Sie für den Mastermodus-Betrieb zuerst MCLK und leiten Sie dann BCLK und LRCLK synchron ab, um den Jitter beim Überqueren der Taktdomäne zu vermeiden
- ✓Halten Sie die I2S-Leiterbahnlängen für BCLK > 6 MHz unter 15 cm, um die Einstell-/Halte-Margen beizubehalten — fügen Sie für längere Läufe einen 33-Ohm-Serienabschluss hinzu
Häufige Fehler
- ✗Verwendung eines 24-MHz-Quarzes für 48-kHz-Audio (ergibt 24/256 = 93,75 kHz, 95% Fehler) — verwenden Sie einen 12,288-MHz-Kristall für exakte 48 kHz (12,288/256 = 48.000 kHz)
- ✗Fehlendes MCLK-Verhältnis zwischen Master und Slave — die meisten DACs benötigen exakt das 256-fache oder das 512-fache, keine willkürlichen Verhältnisse
- ✗Weiterleitung von BCLK und LRCLK als einseitige Signale über Kabel > 30 cm — verwenden Sie LVDS oder Twisted Pair, um Crosstalk-induzierten Jitter über 50 ps zu vermeiden
Häufig gestellte Fragen
Shop Components
As an Amazon Associate we earn from qualifying purchases.
Verwandte Taschenrechner
Comms
SPI-Timing
Berechnen Sie die SPI-Bus-Timing-Parameter, einschließlich Bitperiode, Frame-Zeit, maximale Taktfrequenz, begrenzt durch die Leiterbahnkapazität, und Signalanstiegsrate
Comms
UART-Baudrate
Berechnet das UART-Frame-Timing, den Durchsatz und den USART BRR-Registerdivisor anhand der Baudrate, des Datenformats und der MCU-Taktfrequenz. Identifizieren Sie den Baudratenfehler für eine zuverlässige serielle Kommunikation.
Signal
SNR & ENOB HINZUFÜGEN
Berechnen Sie das Signal-Rausch-Verhältnis des Analog-Digital-Wandlers, die effektive Bitanzahl (ENOB) und den SFDR einschließlich Apertur-Jitter-Effekten
Comms
I2C-Klimmzug
Berechnen Sie die I2C-Pullup-Widerstandswerte für die Modi Standard (100 kHz), Fast (400 kHz) und Fast-Plus (1 MHz). Leitet den minimalen, maximalen und empfohlenen Widerstand aus der Versorgungsspannung und der Buskapazität pro NXP UM10204 ab.