I2S Bus Protocol

----------------------------------------------------------------------------------------

I2S Bus=(inter-IC sound bus)

是由Philips Semiconductors定义的。
------------------------------------------------------------------------------------------

The bus has three lines:
总线有三个信号:
-continuous serial clock (SCK),也称为位时钟BCLK
-word select (WS),也称为帧时钟LRCK
-serial data (SD),也称为串行数据,用二进制补码表示的音频数据

其中:LRCK的频率等于采样频率
LRCK = 0; channel 1 (left);
LRCK = 1; channel 2 (right).

对应数字音频的每一位数据,SCLK都有1个脉冲。
SCLK的频率=2×采样频率×采样位数

有时为了使系统间能够更好地同步,
还需要另外传输一个信号MCLK,称为主时钟,
是采样频率的256倍或384倍。
------------------------------------------------------------------------------------------
The transmitter always sends the MSB of the next word one clock period after the WS changes.

It isn’t necessary for the transmitter to know how many bits the receiver can handle,
nor does the receiver need to know how many bits are being transmitted.

If the receiver is sent more bits than its word length, the bits after the LSB are ignored.
On the other hand,
if the receiver is sent fewer bits than its word length, the missing bits are set to zero internally.

I2S格式的信号无论有多少位有效数据,数据的最高位(MSB)总是出现在WS变化(也就是一帧开始)后的第2个SCLK脉冲处。

这就使得接收端与发送端的有效位数可以不同。

如果接收端能处理的有效位数少于发送端,可以放弃数据帧中多余的低位数据;
如果接收端能处理的有效位数多于发送端,可以自行补足剩余的位。

这种同步机制使得数字音频设备的互连更加方便,而且不会造成数据错位。

------------------------------------------------------------------------------------------

不过,对于“MSB总是出现在WS变化后的第2个SCLK脉冲处”这个描述,

一定要注意,

如果Codec死死按照这个标准做的话,就会导致一些不是问题的问题。

例如,某些自主设计的芯片,由于设计人员的疏忽,

导致MSB有出现在WS变化后的第1个SCLK脉冲处,

这样,如果Codec的MSB位置不可调的话,

就会因为数据错位而导致声音异常。

此时抱怨符不符合标准是没有用的,最重要是解决问题。

如果此处设计人员能够稍微多一点兼容,芯片就多一点成功的可能。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值