i2s总线介绍

简介

I2S(Inter-IC Sound)总线,又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。采用了独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真。

I2S特点 支持全双工和半双工模式 支持主、从模式;

常见的使用场景就是连接主控和codec;

硬件介绍

I2S总线一般由1根系统时钟线和3根信号线组成:
MCLK:称为主时钟,也叫系统时钟(Sys Clock),一般为了使系统间能够更好地同步时增加MCLK信号,MCLK的频率 = 128或者256或者512 * 采样频率;
SCLK(BCLK):串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲。SCK的频率 = 声道数 * 采样频率 * 采样位数;
LRCK:帧时钟LRCK,(也称WS),用于切换左右声道的数据。LRCK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCK的频率等于采样频率
SDATA(SD):就是用二进制补码表示的音频数据。最高位拥有固定的位置,而最低位的位置则是依赖于数据的有效位数。SD可以有多个,一般见得比较多的为2个,一个输入,一个输出,SDO,SDI;也可以同时为输入,或者同时位输出,不同设备有不同的做法,不一而论。

使用场景框图

控制器结构框图

  S3C2440A的Inter-IC Sound (IIS)总线接口作为一个编解码接口连接外部8/16位立体声音频解码IC用于迷你碟机和可携式应用。IIS总线接口支持IIS总线数据格式和MSB-justified数据格式。该接口对FIFO的访问采用了DMA模式取代了中断。它可以在同一时间接收和发送数据。

1、总线接口,寄存器组和状态机(BRFC):总线接口逻辑和FIFO 访问由状态机控制。
2、5 位双预定标器(IPSR):一个预定标器用于IIS 总线接口的主时钟发生器,另外一个用作外部编解码时钟发生器。
3、64 位FIFO(TxFIFO 和RxFIFO):在发送数据传输时,数据写到TxFIFO;在接收数据传输时,从RxFIFO 读取数据。
4、主IISCLK 发生器(SCLKG):在主设备模式,串行位时钟是从主时钟生成。
5、通道发生器和状态机(CHNC):IISCLK 和iislrck 是由通道状态机生成并控制。
6、15 位移位寄存器(SFTR):在发送模式下并行数据移位成串行数据输出,在接收模式下串行数据输入移位成并行数据。

通信协议

随着技术的发展,在统一的I2S硬件接口下,出现了多种不同的I2S数据格式,可分为:I2S Philips标准、左对齐(MSB)标准和右对齐(LSB,也叫日本格式、普通格式)标准。
发送端和接收端必须使用相同的数据格式,确保发送和接收的数据一致。

采样频率;目前常用的采样频率有:11.025KHz、22.05KHz、44.1KHz、48KHz、96KHz等;实际应用中,44.1KHz 可满足绝大多数的音视频应用场景。我们一般将 44.1kHz作为CD音质的采样标准

我们声带的振动频率,约在100Hz~10KHz之间,我们耳朵的听力范围仅限于频率20Hz ~ 20KHz
量化位宽;目前常用的量化位宽有:8bit、16bit、24bit、32bit等;
声道数;1、2、4、8

I2S Philips标准

I2S Philips标准时序图如下图所示:

使用LRCLK信号表示当前正在发送数据所属的声道,LRCLK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCLK信号从当前声道数据的第一个位(MSB)之前的一个时钟开始有效。
LRCLK信号在BCLK的下降沿变化,发送方在时钟信号BCLK的下降沿改变数据,接收方在时钟信号BCLK的上升沿读取数据。正如上文所说,LRCLK频率等于采样频率Fs,一个LRCLK周期(1/Fs)包括发送左声道和右声道数据。
对于这种标准I2S格式的信号,无论有多少位有效数据,数据的最高位总是出现在LRCLK变化(也就是一帧开始)后的第2个BCLK脉冲处。这就使得接收端与发送端的有效位数可以不同。如果接收端能处理的有效位数少于发送端,可以放弃数据帧中多余的低位数据;如果接收端能处理的有效位数多于发送端,可以自行补足剩余的位。
这种同步机制使得数字音频设备的互连更加方便,而且不会造成数据错位。

左对齐(MSB)标准

左对齐(MSB)标准时序图如下图所示:

 

该标准较少使用,在LRCLK发生翻转的同时开始传输数据,注意LRCLK为1时,传输的是左声道数据,LRCLK为0时,传输的是右声道数据,这刚好与I2S Philips标准相反。

右对齐(LSB)标准

右对齐(LSB)标准时序图如下图所示:

 声音数据LSB传输完成的同时,LRCLK完成第二次翻转(刚好是LSB和LRCLK是右对齐的,所以称为右对齐标准)。注意LRCLK为1时,传输的是左声道数据,LRCLK为0时,传输的是右声道数据,这刚好与I2S Philips标准相反。

常见问题

1、信号干扰

解决方法:按照规范布线

参考文档

瑞芯微 | I2S-音频基础 -1 - 知乎 (zhihu.com)

I2S协议要点总结 (baidu.com)

一文搞懂I2S通信总线-腾讯云开发者社区-腾讯云 (tencent.com)

音频基础知识-CSDN博客

I2S音频总线学习(三)S3C2440的I2S控制器_soc i2s控制器-CSDN博客

I2S音频杂音问题调查小结_i2s信号干扰问题-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值