I2S

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

I²S (Inter-IC Sound) ist eine von Philips entworfene Schnittstelle zum Austausch von Stereo-Audio-Daten zwischen ICs (DSPs, ADCs/DACs, Codecs).

Schnittstelle

Folgende Leitungen kommen zum Einsatz:

  1. Takt (Clock, BCK, SCK)
  2. Wortauswahl (Word Select (WS), LRCK)
  3. eine oder mehrere Datenleitungen in eine oder in entgegengesetzte Richtungen (Data Out, DOUT, Data In, DIN, SD) - ursprünglich nur eine Leitung
  4. manchmal noch ein weiterer Takt (MCLK)

Die Datenrichtung ist stets unidiektional.

Die Leitung Wortauswahl ist für die Zuordnung von Daten zum linken und rechten Audio-Kanal zuständig. Der Takt, der vom Master-Gerät geliefert werden muss, ist dann für die Übernahme der Daten an DIN und für die Ausgabe der Daten an DOUT zuständig. Die Datenbits sind bei originalem I²S gegenüber der WS Leitung um einen Takt verschoben. Andere serielle Audioschnittstellen machen dies nicht.

Verwandt ist diese Schnittstelle mit SPI. Hierbei gibt es allerdings zwei Einschränkungen: Die Bitbreiten der Worte für den linken und rechten Kanal unterscheiden sich von den unterstützten 8-Bit von SPI. Hier müssen also zwei 8-Bit Wörter eingelesen bzw. ausgegeben werden, um 16-Bit Sampling-Rate zu unterstützen. Die zweite Einschränkung ist die Bereitstellung des Wortauswahlleitung, da diese im SPI-Protokoll nicht vorhanden ist. Je nach eingesetztem Controller sind unterschiedliche Lösungen möglich, z. B. Erzeugung mit Hilfe von PWM.

Hardware

Die AT91SAM-Controller von Atmel und viele DSPs haben ein serielles Interface, das für I2S geeignet ist (SSC, Synchronous Serial Controller). Ein Beispiel findet man in dem Projekt ARM MP3/AAC Player.

Um mehr als 2 Kanäle zu übertragen, ist z. B. TDM entwickelt worden.