요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.
1. 요약·해설
원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.
2. 영어 원문 전체
번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.
원문 전체 펼치기
==================================
ASoC Digital Audio Interface (DAI)
==================================
ASoC currently supports the three main Digital Audio Interfaces (DAI) found on
SoC controllers and portable audio CODECs today, namely AC97, I2S and PCM.
AC97
====
AC97 is a five wire interface commonly found on many PC sound cards. It is
now also popular in many portable devices. This DAI has a RESET line and time
multiplexes its data on its SDATA_OUT (playback) and SDATA_IN (capture) lines.
The bit clock (BCLK) is always driven by the CODEC (usually 12.288MHz) and the
frame (FRAME) (usually 48kHz) is always driven by the controller. Each AC97
frame is 21uS long and is divided into 13 time slots.
The AC97 specification can be found at :
https://www.intel.com/p/en_US/business/design
I2S
===
I2S is a common 4 wire DAI used in HiFi, STB and portable devices. The Tx and
Rx lines are used for audio transmission, while the bit clock (BCLK) and
left/right clock (LRC) synchronise the link. I2S is flexible in that either the
controller or CODEC can drive (master) the BCLK and LRC clock lines. Bit clock
usually varies depending on the sample rate and the master system clock
(SYSCLK). LRCLK is the same as the sample rate. A few devices support separate
ADC and DAC LRCLKs, this allows for simultaneous capture and playback at
different sample rates.
I2S has several different operating modes:-
I2S
MSB is transmitted on the falling edge of the first BCLK after LRC
transition.
Left Justified
MSB is transmitted on transition of LRC.
Right Justified
MSB is transmitted sample size BCLKs before LRC transition.
PCM
===
PCM is another 4 wire interface, very similar to I2S, which can support a more
flexible protocol. It has bit clock (BCLK) and sync (SYNC) lines that are used
to synchronise the link while the Tx and Rx lines are used to transmit and
receive the audio data. Bit clock usually varies depending on sample rate
while sync runs at the sample rate. PCM also supports Time Division
Multiplexing (TDM) in that several devices can use the bus simultaneously (this
is sometimes referred to as network mode).
Common PCM operating modes:-
Mode A
MSB is transmitted on falling edge of first BCLK after FRAME/SYNC.
Mode B
MSB is transmitted on rising edge of FRAME/SYNC.
3. 한국어 전문 번역
영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.
ASoC가 지원하는 주요 DAI
1-8ASoC는 현재 SoC controller와 휴대용 audio CODEC에서 널리 쓰이는 세 가지 주요 Digital Audio Interface, 즉 AC97, I2S, PCM을 지원한다.
문서에서 비교하는 세 digital audio interface다.
==================================
ASoC Digital Audio Interface (DAI)
==================================
ASoC currently supports the three main Digital Audio Interfaces (DAI) found on
SoC controllers and portable audio CODECs today, namely AC97, I2S and PCM.
AC97 인터페이스
9-22AC97은 많은 PC sound card에서 흔히 볼 수 있는 5-wire interface이며 휴대용 장치에서도 널리 사용된다. 이 DAI에는 RESET line이 있고, playback용 `SDATA_OUT`과 capture용 `SDATA_IN` line에서 데이터를 time multiplexing한다.
Bit clock인 `BCLK`는 항상 CODEC이 구동하며 보통 12.288 MHz다. `FRAME`은 항상 controller가 구동하며 보통 48 kHz다. AC97 frame 하나는 21 us 길이이고 13개 time slot으로 나뉜다.
원문은 AC97 규격 위치로 `https://www.intel.com/p/en_US/business/design`을 제시한다. 이 URL은 원문 그대로 보존한다.
AC97의 data 방향과 clock master를 정리한다.
고정 길이 frame 안에서 control과 audio data가 time slot으로 다중화된다.
AC97
====
AC97 is a five wire interface commonly found on many PC sound cards. It is
now also popular in many portable devices. This DAI has a RESET line and time
multiplexes its data on its SDATA_OUT (playback) and SDATA_IN (capture) lines.
The bit clock (BCLK) is always driven by the CODEC (usually 12.288MHz) and the
frame (FRAME) (usually 48kHz) is always driven by the controller. Each AC97
frame is 21uS long and is divided into 13 time slots.
The AC97 specification can be found at :
https://www.intel.com/p/en_US/business/design
I2S 인터페이스와 정렬 mode
23-46I2S는 HiFi, STB, 휴대용 장치에 쓰이는 일반적인 4-wire DAI다. `Tx`와 `Rx` line이 오디오를 전송하고, bit clock인 `BCLK`와 left/right clock인 `LRC`가 링크를 동기화한다.
I2S에서는 controller와 CODEC 중 어느 쪽이든 BCLK와 LRC의 master가 될 수 있다. BCLK는 보통 sample rate와 master system clock인 `SYSCLK`에 따라 달라지고, `LRCLK`는 sample rate와 같다.
일부 장치는 ADC와 DAC에 별도 LRCLK를 지원한다. 그러면 capture와 playback을 서로 다른 sample rate로 동시에 수행할 수 있다.
I2S mode에서는 LRC가 전환된 뒤 첫 BCLK falling edge에서 MSB를 전송한다. Left Justified mode에서는 LRC 전환 순간에 MSB를 전송한다. Right Justified mode에서는 LRC 전환보다 sample size만큼의 BCLK 앞에서 MSB를 전송한다.
오디오 data line과 동기화 clock line을 구분한다.
LRC 전환을 기준으로 MSB가 나타나는 시점을 비교한다.
SYSCLK와 sample rate 조건이 bit·frame clock을 결정한다.
I2S
===
I2S is a common 4 wire DAI used in HiFi, STB and portable devices. The Tx and
Rx lines are used for audio transmission, while the bit clock (BCLK) and
left/right clock (LRC) synchronise the link. I2S is flexible in that either the
controller or CODEC can drive (master) the BCLK and LRC clock lines. Bit clock
usually varies depending on the sample rate and the master system clock
(SYSCLK). LRCLK is the same as the sample rate. A few devices support separate
ADC and DAC LRCLKs, this allows for simultaneous capture and playback at
different sample rates.
I2S has several different operating modes:-
I2S
MSB is transmitted on the falling edge of the first BCLK after LRC
transition.
Left Justified
MSB is transmitted on transition of LRC.
Right Justified
MSB is transmitted sample size BCLKs before LRC transition.
PCM 인터페이스와 TDM mode
47-64PCM은 I2S와 매우 비슷하지만 더 유연한 protocol을 지원하는 또 하나의 4-wire interface다. `BCLK`와 `SYNC` line이 링크를 동기화하고, `Tx`와 `Rx` line이 오디오 데이터를 송수신한다.
BCLK는 보통 sample rate에 따라 달라지며 SYNC는 sample rate로 동작한다. PCM은 여러 장치가 bus를 동시에 사용할 수 있는 Time Division Multiplexing(TDM)도 지원하며, 이를 network mode라고 부르기도 한다.
PCM Mode A에서는 `FRAME/SYNC` 뒤 첫 BCLK falling edge에서 MSB를 전송한다. Mode B에서는 `FRAME/SYNC` rising edge에서 MSB를 전송한다.
PCM 링크의 clock·sync와 양방향 data line이다.
FRAME/SYNC를 기준으로 MSB 전송 edge를 비교한다.
여러 장치가 하나의 bus frame에서 서로 다른 time slot을 사용한다.
PCM
===
PCM is another 4 wire interface, very similar to I2S, which can support a more
flexible protocol. It has bit clock (BCLK) and sync (SYNC) lines that are used
to synchronise the link while the Tx and Rx lines are used to transmit and
receive the audio data. Bit clock usually varies depending on sample rate
while sync runs at the sample rate. PCM also supports Time Division
Multiplexing (TDM) in that several devices can use the bus simultaneously (this
is sometimes referred to as network mode).
Common PCM operating modes:-
Mode A
MSB is transmitted on falling edge of first BCLK after FRAME/SYNC.
Mode B
MSB is transmitted on rising edge of FRAME/SYNC.
요약·해설
dai.rst:1-64ASoC가 지원하는 AC97·I2S·PCM Digital Audio Interface의 wire 구성, BCLK·FRAME·LRC·SYNC master와 주파수 관계, MSB 정렬 mode 및 PCM TDM/network mode를 비교합니다. 원문 timing 수치와 신호명을 줄 좌표에 맞춰 보존합니다.