I²S bus | |
Type: | Serial communication bus |
Designer: | Philips Semiconductor, known today as NXP Semiconductors |
Data Signal: | Push-pull |
Data Bit Width: | 1 data line (SD) + 2 clock lines (SCK, WS) |
Data Style: | Serial |
Inter-Integrated Circuit Sound (I²S, pronounced "eye-squared-ess") is a serial interface protocol for transmitting two-channel, digital audio as pulse-code modulation (PCM) between integrated circuit (IC) components of an electronic device. An I²S bus separates clock and serial data signals, resulting in simpler receivers than those required for asynchronous communications systems that need to recover the clock from the data stream. Alternatively, I²S is spelled I2S (pronounced eye-two-ess) or IIS (pronounced eye-eye-ess). Despite a similar name, I²S is unrelated to I²C.
The protocol standard was introduced in 1986 by Philips Semiconductor (now NXP Semiconductors) and was first revised June 5, 1996.[1] The standard was last revised on February 17, 2022 and updated terms master and slave to controller and target.[2]
As shown in the diagram, the protocol requires the following lines:
The protocol may also include the following lines:
The bit clock pulses once for each discrete bit of data on the data lines. The bit clock frequency is the product of the sample rate, the number of bits per channel and the number of channels. So, for example, CD Audio with a sample frequency of 44.1 kHz, with 16 bits of precision and two channels (stereo) has a bit clock frequency of:
44.1 kHz × 16 × 2 = 1.4112 MHz
The word select clock lets the device know whether channel 1 (WS = 0) or channel 2 (WS = 1) is currently being sent, because I²S allows two channels to be sent on the same data line. It is a 50% duty-cycle signal that has the same frequency as the sample frequency. For stereo material, the I²S specification states that left audio is transmitted on the low cycle of the word select clock and the right channel is transmitted on the high cycle. It is typically synchronized to the falling edge of the serial clock, as the data is latched on the rising edge. The word select clock changes one bit clock period before the MSB is transmitted. This enables, for example, the receiver to store the previous word and clear the input for the next.
Data is signed, encoded as two's complement with the MSB (most significant bit) first.[1] This allows the number of bits per frame to be arbitrary, with no negotiation required between transmitter and receiver.
In audio equipment, I²S is sometimes used as an external link between a CD player or digital audio streaming device and an external digital-to-analog converter, as opposed to a purely internal connection within one player box. This may form an alternative to the commonly used AES/EBU, Toslink or S/PDIF standards.
The I²S connection was not intended to be used via cables, and most integrated circuits will not have the correct impedance for coaxial cables. As the impedance adaptation error associated with the different line lengths can cause differences in propagation delay between the clock line and data line, this can result in synchronization problems between the SCK, WS and data signals, mainly at high sampling frequencies and bitrates. As the I²S bus doesn't have any error detection mechanism, this can cause significant decoding errors.
There is no standard interconnecting cable for this application. Some manufacturers simply provide three BNC connectors, an 8P8C ("RJ45") socket or a DE-9 connector. Others like Audio Alchemy (now defunct) used DIN connectors. PS Audio, Musica Pristina and Wyred4Sound use an HDMI connector.[7] Dutch manufacturer Van Medevoort has implemented Q-link in some of its equipment, which transfers I²S over 4 RCA connectors (data, MCK, LRCK, BCK).