1. i2s简介
i2s全称inter-ic sound, integrated interchip sound,或简写iis,是飞利浦在1986年定义(1996年修订)的数字音频传输标准,用于数字音频数据在系统内部器件之间传输,例如编解码器codec、dsp、数字输入/输出接口、adc、dac和数字滤波器等。除了都是由飞利浦定义外,i2s和i2c没有任何关系。
i2s是比较简单的数字接口协议,没有地址或设备选择机制。在i2s总线上,只能同时存在一个主设备和发送设备。主设备可以是发送设备,也可以是接收设备,或是协调发送设备和接收设备的其它控制设备。在i2s系统中,提供时钟(sck和ws)的设备为主设备。图3是常见的i2s系统框图。在高端应用中,codec经常作为i2s的主控设备以精确控制i2s的数据流。
i2s包括两个声道(left/right)的数据,在主设备发出声道选择/字选择(ws)控制下进行左右声道数据切换。通过增加i2s接口的数目或其它i2s设备可以实现多声道(multi-channels)应用。
2. 信号定义
在i2s传输协议中,数据信号、时钟信号以及控制信号是分开传输的。i2s协议只定义三根信号线:时钟信号sck、数据信号sd和左右声道选择信号ws。
时钟信号 serial clock
sck是模块内的同步信号,从模式时由外部提供,主模式时由模块内部自己产生。不同厂家的芯片型号,时钟信号叫法可能不同,也可能称bclk/bit clock或scl/serial clock
数据信号 serial data
sd是串行数据,在i2s中以二进制补码的形式在数据线上传输。在ws变化后的第一个sck脉冲,先传输最高位(msb, most significant bit)。先传送msb是因为发送设备和接收设备的字长可能不同,当系统字长比数据发送端字长长的时候,数据传输就会出现截断的现象/truncated,即如果数据接收端接收的数据位比它规定的字长长的话,那么规定字长最低位(lsb: least significant bit)以后的所有位将会被忽略。如果接收的字长比它规定的字长短,那么空余出来的位将会以0填补。通过这种方式可以使音频信号的最高有效位得到传输,从而保证最好的听觉效果。
根据输入或输出特性,不同芯片上的sd也可能称sdata、sdin、sdout、dacdat、adcdat等;
数据发送既可以同步于sck的上升沿,也可以是下降沿,但接收设备在sck的上升沿采样,发送数据时序需考虑
左右声道选择信号 word select
ws是声道选择信号,表明数据发送端所选择的声道。当:
ws=0,表示选择左声道
ws=1,表示选择右声道
ws也称帧时钟,即lrclk/left right clock。ws频率等于声音的采样率。ws既可以在sck的上升沿,也可以在sck的下降沿变化。从设备在sck的上升沿采样ws信号。数据信号msb在ws改变后的第二个时钟(sck)上升沿有效(即延迟一个sck),这样可以让从设备有足够的时间以存储当前接收的数据,并准备好接收下一组数据。
3. i2s操作模式
根据sd相对于sck和ws位置的不同,i2s分为三种不同的操作模式,分别为标准i2s模式、左对齐模式和右对齐模式:
i2s phillips standard i2s格式
left justified standard 左对齐格式
right justified standard 右对齐格式
i2s模式属于左对齐中的一种特例,也叫philips模式,是由标准左对齐格式再延迟一个时钟位变化来的。时序如下图所示,左声道的数据msb在ws下降沿之后第二个sck/bclk上升沿有效,右声道数据的msb在ws上升沿之后第二个sck/bclk上升沿有效。
标准左对齐较少使用,下图为左对齐时序图,和philips格式对比可以看出,标准左对齐格式的数据的msb没有相对于bclk延迟一个时钟。左对齐格式的左声道的数据msb在ws上升沿之后sck/bclk的第一个上升沿有效;右声道的数据msb在ws下降沿之后sck/bclk第一个上升沿有效。标准左对齐格式的优点在于,由于在ws变化后的第一个sck上升沿就开始采样,它不需要关心左右声道数据的字长,只要ws的时钟周期足够长,左对齐的方式支持16-32bit字长格式。
标准右对齐也叫日本格式,eiaj (electronic industries association of japan) 或sony格式,下图为右对齐时序图。右对齐格式左声道的数据lsb在ws下降沿的前一个sck/bclk上升沿有效,右声道的数据lsb在ws上升沿的前一个sck/bclk上升沿有效。相比于标准左对齐格式,标准右对齐的不足在于接收设备必须事先知道待传数据的字长。这也解释了为什么许多codec都会提供多种右对齐格式选择功能。
注:
标准左对齐和标准右对齐模式的lrck/ws高低电平对应的左右声道与标准i2s模式的规定恰好相反!标准左右对齐lrck/ws高电平对应左声道,lrck/ws低电平对应右声道;而i2s低电平对应左声道,lrck/ws高电平对应右声道!
4. i2s数据时钟(sck)频率计算
例如:设声音的采样频率为44.1 khz,即声道选择信号(帧时钟)ws的频率必须也为44.1 khz;左/右2个声道的量化深度均为16 bit,则i2s的sck的频率为:44.1 khz×16×2=1.4112 mhz
sck = 采样率 * 位宽 * 通道数
ws = 采样率
如果需要传输20 bit、24 bit或32 bit的左右声道的数据,可以提高sck的频率,由上式可以计算出需要的sck的频率。
pcm接口
1. pcm简介
pcm (pulse code modulation) 是通过等时间隔(即采样率时钟周期)采样将模拟信号数字化的方法。下图为 4 bit 采样深度的pcm数据量化示意图。
pcm数字音频接口,即说明接口上传输的音频数据通过pcm方式采样得到的,以区别于pdm方式。在音频领域,pcm接口常用于板级音频数字信号的传输,与i2s相似。pcm和i2s的区别于数据相对于帧时钟(fsync/ws)的位置、时钟的极性和帧的长度。其实,i2s上传输的也是pcm类型的数据,因此可以说i2s不过是pcm接口的特例。
相比于i2s接口,pcm接口应用更加灵活。通过时分复用(tdm, time division multiplexing)方式,pcm接口支持同时传输多达n个(n>8)声道的数据,减少了管脚数目(实际上是减少i2s的“组”数,因为每组i2s只能传输两声道数据嘛)。tdm不像i2s有统一的标准,不同的ic厂商在应用tdm时可能略有差异,这些差异表现在时钟的极性、声道配置的触发条件和对闲置声道的处理等。
tdm/pcm数字音频接口的硬件拓扑结构也与i2s相近。
综合不少厂商的数据手册,笔者发现,在应用pcm音频接口传输单声道数据(如麦克风)时,其接口名称为pcm;双声道经常使用i2s;而tdm则表示传输两个及以上声道的数据,同时区别于i2s特定的格式。
2. 信号定义
pcm接口与i2s相似,电路信号包括:
pcm_clk 数据时钟信号
pcm_sync 帧同步时钟信号
pcm_in 接收数据信号
pcm_out 发送数据信号
tdm/pcm与i2s接口对应关系见下表:
3. 操作模式
根据 sd相对帧同步时钟fsync的位置,tdm分两种基本模式:
mode a: 数据在fsync有效后,bclk的第2个上升沿有效
mode b: 数据在fsync有效后,bclk的第1个上升沿有效
注:由于没有统一标准,不同厂商对mode a和mode b定义可能有所差别。
在实际应用中,总是以帧同步时钟fsync的上升沿表示一次传输的开始。帧同步时钟的频率总是等于音频的采样率,比如44.1 khz,48 khz等。多数应用只用到fsync的上升沿,而忽略其下降沿。根据不同应用fsync脉冲宽度的差别,pcm帧同步时钟模式大致分为两种:
长帧同步 long frame sync
短帧同步 short frame sync
注:
a. 长帧同步,如图所示,fsync脉冲宽度等于1个slot的长度。slot在tdm中表示的是传输单个声道所占用的位数。如图所示ti mcasp接口的tdm包括6个slots,即它最多可包括6声道数据。注意,slot的位数并不一定等于音频的量化深度。比如slot可能为32 bit,其中包括24 bit有效数据位(audio word) + 8 bit零填充(zero padding)。不同厂商对slot的叫法可能有所区别,比如circus logic称之为channel block;
b. 短帧同步,fsync脉冲宽度等于1个bclk周期长度;
c. 由于没有统一标准,不同厂商对fsync脉冲宽度及触发边沿的设置可能不同,以器件手册为准。
8-bit长帧同步模式
16bit 长帧同步模式
5. 时钟(bclk)频率的计算
fsync的频率等于音频的采样率(例如44.1 khz,48 khz等)。frame每次传输包括所有声道的数据。pcm采样音频数据量化深度一般在16-32bit(最常见为16/24bit)。那么对于8声道,每个声道32bit音频数据,采样率48khz的系统,tdm的系统时钟速率为:8 × 32 × 48khz = 12.288 mhz
bclk = 采样率 * 位宽 * 通道数
fync = 采样率
在器件datasheet中,可以见到tdm128/tdm256/tdm384/tdm512等说法,数字的含义为单个tdm数据帧包含数据的比特数(即帧长)。tdm128:16bit * 8 channel。tdm256:32bit * 8channel。依次类推。
亚马逊推出云计算专用芯片支持NVMe固态硬盘
大朋DPVR正式发布VR一体机,主打“全景声巨幕观影”体验
中兴通讯携手合作伙伴打造精品5G网络
不看不知道 原来朗科Z11移动固态硬盘这么多优势!
一个从数据中估计参数的基础机器学习问题
全面解析I2S、TDM、PCM音频总线
VBE标准及其在实时动态图像实时显示中的应用
2020性价比高的移动电源,双十二值得入手的爆款
防水透气膜是什么,防水透气膜有哪些应用?
Redmi K30 5G首销 搭载高通骁龙765G移动平台
小米扫地机器人和科沃斯哪个好_小米和科沃斯、iRobot对比
华为邓泰华表示相比4G技术5G频谱带宽和天线通道数扩展了数十倍
手机射频开关领域的工艺纷争:RF-SOIVs.MEMS
电子芯闻早报:驾驶充电同时进行的高通新技术
圆管相贯线切割机 五轴相贯线切割机
嵌入式行业需要什么样的技术人才?
应用于变压器油中气体检测的方法
关于新一代私有云产品kubernetes的微服务架构
一个简单的NMOS 驱动电路设计
边缘人工智能是什么 边缘人工智能和人工智能的区别