Skip to content
RFrftools.io
Comms

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.

Loading calculator...

Formel

BCLK=Fs×Nbits×NchBCLK = F_s \times N_{bits} \times N_{ch}

Referenz: Philips I2S Bus Specification, 1996

FsAbtastrate (kHz)
NbitsBittiefe pro Sample (bits)
NchAnzahl der Kanäle
BCLKBit-Taktfrequenz (Hz)

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

256- oder 512-mal die Abtastrate gemäß den meisten DAC/Codec-Datenblättern. Für 48 kHz: MCLK = 12,288 MHz (256x) oder 24,576 MHz (512x). Für 44,1 kHz: MCLK = 11,2896 MHz (256x) oder 22,5792 MHz (512x). Einige Geräte unterstützen 128x für den Betrieb mit geringem Stromverbrauch, wodurch MCLK bei 48 kHz auf 6,144 MHz reduziert wird.
BCLK skaliert direkt mit der Bittiefe. Bei 48 kHz Stereo: 16-Bit erfordert BCLK = 1,536 MHz, 24-Bit erfordert 2,304 MHz, 32-Bit erfordert 3,072 MHz. Höhere Bittiefen erhöhen Datenrate und EMI, was ein sorgfältiges PCB-Routing erfordert. 32-Bit bei 192 kHz erzeugen 12,288 MHz-Taktflanken mit Anstiegszeiten von 2—3 ns.

Shop Components

As an Amazon Associate we earn from qualifying purchases.

USB-UART Adapter

USB to serial adapter for protocol debugging and flashing

USB Logic Analyzer

8-channel USB logic analyzer for capturing digital bus traffic

Verwandte Taschenrechner