c't 20/2019
S. 178
Know-how
I2S

Chip-Stereo

Wie das I²S-Protokoll für serielle Soundübertragung zwischen Chips arbeitet

I²S überträgt Audiosignale seriell mit beliebiger Bittiefe und Samplingrate. Mit dem Protokoll sendet beispielsweise ein Raspi ein sauberes Stereosignal an externe Digital-Analog-Konverter. Klingt es doch mal verzerrt, ist ein genauer Blick in die Funktionsweise von I²S hilfreich.

Um ein hochwertiges Stereosignal per I2S zu übertragen, brauchen Mikrochips lediglich drei Drähte. Die Periode des Rechtecksignals (Takt) auf dem ersten Draht (SCK oder BCLK) gibt die Länge eines Bits auf dem zweiten Draht (SD oder SDATA) vor. Dort überträgt I2S die Samples der Puls-Code-Modulation (PCM). Der Pegel auf dem dritten Draht (WS, LRCLK oder FS) entscheidet darüber, ob die Samples zum linken (> 0,8 V) oder rechten (< 2 V) Kanal gehören. Jeder Flankenwechsel auf WS leitet ein neues Sample ein, abwechselnd für den linken und rechten Kanal. I2S kann dadurch Daten mit beliebiger Genauigkeit übertragen. Wechselt WS (kurz für „word select“) schon nach 8 Bit, erreicht den Empfänger ein Signal in Telefonqualität. Lässt WS dagegen Platz für 24 Bit, erfreut der Datenstrom auch Goldöhrchen. Damit der dynamische Wechsel zwischen Bitraten klappt, beginnen die Samples mit dem Vorzeichen und danach dem größten Bit. So kann auch ein Empfänger einfach einen Teil der Daten abschneiden, falls er sie nicht mehr verarbeiten kann. Ein Abschneiden von Bits verringert allerdings die Tonqualität.

Megahertz