The AC-Link is a digital link that connects the DC97 (the controller) with the audio "codecs." It is composed of 5 wires: the clock (12.288 MHz), a sync signal, a reset signal, and two data wires, namely sdata_out (contains the DC97 output) and sdata_in (contains the codec output). The AC-Link provides a bidirectional (one using sdata_out and the other using sdata_in), fixed bitrate (12.288 Mbit/s), serial digital stream between one controller and several audio codecs.
Each 12.288 Mbit/s stream is divided into 256-bit frames (frame frequency is 48 kHz). This is therefore a time division multiplexing (TDM) scheme.
Every frame is subdivided in 13 slots, from which slot 0 (16 bits) is used to specify which audio codec is talking to the controller. The remaining 240 bits are divided in 12 20-bit slots (slots 1-12), used as data slots.
Each data slot (48 kHz, 20 bits/sample) is used to transmit a raw PCM audio signal (960 kbit/s). Several data slots in the same frame can be combined into a single high-quality signal (maximum is 4 slots, obtaining a 192 kHz, 20 bit/sample, stereo signal).
Since AC-Link is a fixed-frequency link, all sample rate conversion should be performed in the DC97 (controller) or in the software driver.
Read more about this topic: AC'97