- I2S 基本概念
- 飞利浦(I2S)标准模式
- 左(MSB)对齐标准模式
- 右(LSB)对齐标准模式
- DSP 模式
-
TDM 模式
I2S 协议基本概念
信号线定义
I2S 信号线有多种模式
- 五线 I2S
- 四线 DAC I2S
- 四线 ADC I2S
- 两线 TX I2S
- 两线 RX I2S
以五线 I2S 为例,各个信号线的功能及描述见下表
信号线 | 描述 |
---|---|
SCLK | 串行时钟,也叫位时钟(BCLK),对应数字⾳频的每⼀位数据,SCLK 都有⼀个脉冲。SCLK 的频率=2x采样频率x采样位数
|
ADC_LRCLK | 帧时钟,⽤于切换左右声道的数据,控制上行数据。LRCLK(Left/Right CLOCK),LRCLK 的频率 = 采样频率
|
DAC_LRCLK | 帧时钟,⽤于切换左右声道的数据,控制下行数据。LRCLK(Left/Right CLOCK),LRCLK 的频率 = 采样频率
|
SDATAI | 串行数据输入,用二进制补码表示的音频数据输入信号(MSB->LSB:数据由高位到低位依次传输) |
SDATAO | 串行数据输出,用二进制补码表示的音频数据输出信号(MSB->LSB:数据由高位到低位依次传输) |
MCLK | 主时钟,也叫系统时钟(Sys Clock),为了使系统间能够更好的同步,MCLK的频率=256fs 或384fs(fs 指采样频率) |
- 需要注意的是 MCLK 其实不是 I2S 中规定的,只是为了让 codec 和 MCU 间能够更好的同步。
协议分类
根据 data 相对于 LRCLK 与 BCLK 位置的不同,I2S 协议一般分为 6 种不同的模式,发送端和接收端必须使用相同的数据格式。
- 飞利浦(I2S)标准模式
- 左(MSB)对齐标准模式
- 右(LSB)对齐标准模式
-
DSP 模式
- DSP 模式 A
- DSP 模式 B
-
TDM 模式
- TDM 模式 A
- 4 通道 TDM
- 6 通道 TDM
- 8 通道 TDM
- N 通道 TDM
- TDM 模式 B
- 4 通道 TDM
- 6 通道 TDM
- 8 通道 TDM
- N 通道 TDM
- TDM 模式 C
- 4 通道 TDM
- 6 通道 TDM
- 8 通道 TDM
- N 通道 TDM
- TDM 模式 A
相关术语
- MSB:表示数据的最高 BIT 位
- LSB:表示数据的最低 BIT 位
- PCM:Pulse Code Modulation - 脉冲编码调制
- TDM:Time Division Multiplexing - 时分复用
- slot:槽 - 是指某个通道的一帧数据
- slot_num:槽的个数
- slot_width:一帧数据的位数
位宽与位深
位宽
根据上面公式 SCLK 的频率=2x采样频率x位宽
,可以得到 I2S
的数据位宽
位宽
=
S
C
L
K
/
B
C
L
K
2
L
R
C
L
K
=
S
C
L
K
/
B
C
L
K
2
f
s
位宽 = {\frac{SCLK/BCLK}{{2} {LRCLK}}} = {\frac{SCLK/BCLK}{2fs}}
位宽=2LRCLKSCLK/BCLK=2fsSCLK/BCLK
位深
表示音频数据量化后的精度
示例
例如,在下文出现的图中,位宽均为 32 位,位深可以设置为 32/24/20/16
等
需要注意在 I2S/LJ/RJ 模式中,位宽/位深
是由 master 决定的
32位
位宽,32位
位深
- I2S mode
- MSB first
-
32位
位宽 word width,32位
位深 bit depth - 2通道
时序如下
32位
位宽,24位
位深
- I2S mode
- MSB first
-
32位
位宽 word width,24位
位深 bit depth - 2通道
时序如下
32位
位宽,20位
位深
- I2S mode
- MSB first
-
32位
位宽 word width,20位
位深 bit depth - 2通道
时序如下
文章来源:https://www.toymoban.com/news/detail-700157.html
32位
位宽,16位
位深
- I2S mode
- MSB first
-
32位
位宽 word width,16位
位深 bit depth - 2 通道
时序如下
文章来源地址https://www.toymoban.com/news/detail-700157.html
到了这里,关于音频——I2S 协议基本概念(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!