数字音频接口DAI,即Digital Audio Interfaces,顾名思义,DAI表示在板级或板间传输数字音频信号的方式。相比于模拟接口,数字音频接口抗干扰能力更强,硬件设计简单,DAI在音频电路设计中得到越来越广泛的应用。图1和图2对比传统的音频信号和数字音频信号链的区别。
在传统的音频电路(图1)中有麦克风、前置放大器、模/数转换器ADC、数/模转换器DAC、输出放大器,以及扬声器,它们之间使用模拟信号连接。随着技术的发展和对性能考虑,模拟电路逐渐被推到链路的两端(集成到设备内部),信号链中各集成电路间将出现更多的数字接口形式。DSP通常都是数字接口的;换能器(Transducers, i.e. Mic & Speaker)、放大器一般而言只有模拟接口,但现在也正在逐渐集成数字接口功能。目前,集成电路设计人员正在将换能器内的ADC、DAC和调制器集成到信号链一端,这样就不必在PCB上走任何模拟音频信号,并且减少了信号链中的器件数量。图2给出了一个完整数字音频接口的例子。
传统的音频信号链路
数字音频信号链路
数字音频信号的传输标准,如I2S、PCM (Pulse Code Modulation) 和PDM (Pulse Density Modulation)主要用于同一块电路板上芯片之间音频信号的传输;Intel HDA (Intel High Definition Audio) 用于PC的Audio子系统(声卡)应用;S/PDIF和Ethernet AVB主要应用于板间长距离及需要电缆连接的场合。
本文主要介绍I2S, PCM和PDM等数字音频接口,主要它们是板内接口比较常用。
缩写释义CAS:随路信令,语音和信令在同一路话路中传送的信令
CCS:共路信令,语音和信令分开传输
ASLA - Advanced Sound Linux Architecture
OSS - 以前的Linux音频体系结构,被ASLA取代并兼容
Codec - Coder/Decoder
I2S/PCM/AC97 - Codec与CPU间音频的通信协议/接口/总线
DAI - Digital Audio Interface 其实就是I2S/PCM/AC97/PDM/TDM等,实现音频数据在CPU和Codec间的通信
DSP - Digital Signal Processor
Mixer - 混音器,将来自不同通道的几种音频模拟信号混合成一种模拟信号
Mute - 消音,屏蔽信号通道
PCM - Pulse Code Modulation 一种从音频模拟信号转换成数字信号的技术,区别于PCM音频通信协议
采样频率 - ADC的频率,每秒采样的次数,典型值如44.1KHZ
量化精度 - 比如24bit,就是将音频模拟信号按照2的24次方进行等分
SSI - Serial Sound Interface
DAPM - Dynamic Audio Power Management
Codec - 音频编解码器Codec负责处理音频信息,包括ADC,DAC,Mixer,DSP,输入输出以及音量控制等所有与音频相关的功能。Codec与处理器之间通过I2C总线和数字音频接口DAI进行通信。
I2S接口
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系统通信配置框图
IIS 特性- 1、 先传高位再传低位
- 2、数据的MSB从LRCLK边沿起延迟1 BCLK
- 3、主要有三个时钟
主时钟 MCLK
系统时钟,一般是12.288MHz 18.432MHz等 ,一般是位时钟(Bclk)的256倍或384倍
位时钟 BCLK(也有叫串行) 传输一位数据的时钟周期
帧时钟 LRCLK 低电平左声道 高电平右声道
- 4、串行SDDATA 用二进制补码表示的音频数据
- 5、其他方式
左对齐 数据的MSB在LRCLK边沿起第一个BCLK上升沿 用的比较少
右对齐 数据的LSB靠左LRCLK的上升沿 sony使用这种格式
- 6、电压(TTL) 输出 VL <0.4V VH>2.4V 输入电压 VIL=0.8V VIH=2.0V
与PCM相比,IIS更适合于立体声系统,用于传音乐。
在I2S/PCM接口的ADC/DAC系统中,除了BCLK和FS(LRCLK)外,CODEC经常还需要控制器提供MCLK (Master Clock),这是由CODEC内部基于Delta-Sigma (ΔΣ)的架构设计要求使然。MCLK时钟频率一般为256*FS,具体参考特定器件手册。
IIS仅仅是PCM的一个分支,接口定义都是一样的
它们有四组信号: 位时钟信号,同步信号,数据输入,数据输出。
PCM一般传单声道的声音,也可以传立体声,采样频率一般为8KHz。
IIS一般传立体声,比PCM多了一个线路。数据格式都为PCM格式。左/右声道的一个采样点编码一般为16位(量化深度),两个声道加起来为32位。
I2S只能传2个声道的数据,PCM一个复帧可以传多达32路数据。
AC97AC97(Audio Codec 1997)是以Intel为首的五个PC厂商Intel、Creative Labs、NS、Analog Device与Yamaha共同提出的规格标准。与PCM和IIS不同,AC’97不只是一种数据格式,用于音频编码的内部架构规格,它还具有控制功能。AC’97采用AC-Link与外部的编解码器相连,AC-Link接口包括位时钟(BITCLK)、同步信号校正(SYNC)和从编码到处理器及从处理器中解码(SDATDIN与SDATAOUT)的数据队列。AC’97数据帧以SYNC脉冲开始,包括12个20位时间段(时间段为标准中定义的不同的目的服务)及16位“tag”段,共计256个数据序列。例如,时间段“1”和“2”用于访问编码的控制寄存器,而时间段“3”和“4”分别负载左、右两个音频通道。“tag”段表示其他段中哪一个包含有效数据。把帧分成时间段使传输控制信号和音频数据仅通过4根线到达9个音频通道或转换成其他数据流成为可能。与具有分离控制接口的IIS方案相比,AC’97明显减少了整体管脚数。一般来说,AC’97编解码器采用TQFP48封装。
PDM(脉冲密度调制)[一般用于数字mic]PDM(Pulse Density Modulation)是一种用数字信号表示模拟信号的调制方法。同为将模拟量转换为数字量的方法,PCM使用等间隔采样方法,将每次采样的模拟分量幅度表示为N位的数字分量(N = 量化深度),因此PCM方式每次采样的结果都是N bit字长的数据。PDM则使用远高于PCM采样率的时钟采样调制模拟分量,只有1位输出,要么为0,要么为1。因此通过PDM方式表示的数字音频也被称为Oversampled 1-bit Audio。相比PDM一连串的0和1,PCM的量化结果更为直观简单。
在以PDM方式作为模数转换方法的应用接收端,需要用到抽取滤波器(Decimation Filter)将密密麻麻的0和1代表的密度分量转换为幅值分量,而PCM方式得到的就已经是幅值相关的数字分量。图20示意为通过PDM方式数字化的正弦波。
PCM方式的逻辑更加简单,但需要用到数据时钟,采样时钟和数据信号三根信号线;PDM方式的逻辑相对复杂,但它只需要两根信号线,即时钟和数据。PDM在诸如手机和平板等对于空间限制严格的场合有着广泛的应用前景。在数字麦克风领域,应用最广的就是PDM接口,其次为I2S接口。PDM格式的音频信号可以在比如LCD屏这样Noise干扰强的电路附近走线(等于没说,这里指数字信号抗干扰能力相比于模拟信号更强,同样PCM也具有此优势)。
通过PDM接口方式,传输双声道数据只要用到两根信号线。如图21示意两个PDM接口的发送设备与同一个接收设备的连接情况,比如Source 1/2分别作为左右声道的麦克风,通过这种方式可以将采集到的双声道数据传送到接收设备。主设备(此例中作为接收设备)为两个从设备提供时钟,分别在时钟的上升沿和下降沿触发选择Source 1/2作为数据输入。
在PDM输出麦克风内部,可以发现一个小型ADC IC(调制器),其用于将MEMS传感器输出的模拟信号转换为PDM信号流。这种音频转换器技术所生成的信号,其低频频谱接近所需音频信号,而高频寄生部分的频率在某个拐点频率之上随频率上升快速升高,基本落在最终产品需要使用的音频频率范围之外。
对于每一个采样点,用1bit就可以记录,也就是说,仅仅用表示“否”的“0”和表示“是”的“1”去记录这一个采样点的电平值。
DSD的编码过程中,对信号进行量化的方式和PCM完全不一样。具体原理如下:
首先是Δ调制这个概念试想一下,我们不像PCM那样用一组规定的电平值去度量,而是只使用一个固定的差值Δ去度量原始模拟信号。依然是隔一段时间间隔取一次样,每次取样得到的电平会拿来与上一次取样的信号进行比较,如果其差值大于Δ,则输出1(0),否则输出为0(1)。于是每个采样点就能以1bit的形式来表示,而不是像PCM、I2S用8位、16位的量化深度去表示。
但是Δ调制有着一个缺点,就是随着输入模拟信号的频率增高,信噪比SNR会急剧下降。我们可以通过减小Δ的值,并且增大采样频率,来控制量化噪声(通过增大采样频率和减小Δ值来使确保采样的电平差值不会过大)。
PDM的主体思想就是这样,每一个采样的值是上一个采样的相对值,前后采样点相互连系密不可分。这种量化方式的思想因为其连续性,更加接近自然中的声音。
为了克服Δ调制的缺陷,发展出了∑-Δ调制器(Sigma-Delta Modulator)
如上图,如果我们在信号的输入端再加一个差分器,信号从差分器正相输入,然后通过一个积分器,然后到Δ调制器(A/D),把Δ调制后的结果进行一次D/A转换,并且延时输入到差分器的反相端作为反馈,这就是一个完整的∑-Δ调制器了(应该都知道∑是什么意思)。
输入信号被发送到差分区,在差分块中从中减去反馈信号。产生的信号被发送到积分器,积分器的输出作用于比较器。比较器将参考电压与积分器的输出进行比较,并相应地产生“0”或“1”。
反过来,DAC由ADC输出的0和1去产生两个可用参考电压(最高电平或最低电平)。该参考电压被反馈到差值区。这个差分放大器的反馈设计使得DAC的输出平均值等于输入信号。DAC的输出是输入信号的模拟表示,即调制器的输出。
整体的量化方式思路还是和Δ调制类似,不过反馈回路差分放大器的反相输入端的电平为整个信号的最大值(逻辑1对应的模拟电压)或最小值(逻辑0对应的模拟电压),即Δ调制输出1,则反馈回Vmax,输出0,则反馈回Vmin,两者均为固定值。
也就是说积分器积分的是输入电平与最高或最低电平的差值,然后我们再对积分后结果进行一次Δ调制(这个过程可能不是那么容易想通,把原信号当成是某函数f(x)的导数,然后我们对f(x)来进行Δ调制量化,这样也许会更好理解一点)。
这样一来,量化的对象就变成了当前信号电平和先前所有差值和的差值,量化电平不再会受频率影响,最大量化范围直接取决于电平值。反馈中加入的延时电路使得∑-Δ调制器有着噪声整形的特征,一阶的∑-Δ调制器的噪声整形效果不明显,但是我们可以把多阶∑-Δ调制器叠加到一起,使得噪声整形效果达到一个较高水平。
这个噪声整形的具体结果就是,量化噪声总体量没有变,但是不是平均分布在所有频段上,低频段的量化噪声会较少,而高频的量化噪声会较多.也就是说,量化噪声被"推挤"到了高频中.在音频应用中,大部分量化噪声被推挤到了远超过20kHz的高频,也就是人耳听不到的频段,利用一个低通滤波就可以很简单地把这些噪声给干掉了。
PDM就是经过了以上的∑-Δ调制而得到的数字信号,如果把这一连串数字信号放在同一标尺上和原始信号相比,会发现数字"0"和"1"随着信号电频的增减成都而密度产生相应变化,所以称为是脉冲密度调制**(Pulse Density Modulation)。
从实际工程设计的角度来看,典型PDM麦克风应有电源引脚、接地引脚,当然还需要时钟输入引脚、数据输出引脚和通道选择引脚**。根据通道选择引脚的状态,麦克风的输出在时钟信号处于低电平或高电平状态为活跃状态,在另一状态下处于高阻抗。这种聪颖的设计意味着可以用一根话筒线多路复用两个麦克风,这样立体声PDM接口仅需两根线缆,即时钟输出线缆和一根同时支持两个声道的数据返回线。
在以PDM方式作为模数转换方法的应用接收端,需要用到抽取滤波器(Decimation Filter)将密密麻麻的0和1代表的密度分量转换为幅值分量。
PDM方式的逻辑相对复杂,但它只需要两根信号线,即时钟和数据。PDM在诸如手机和平板等对于空间限制严格的场合有着广泛的应用前景。在数字麦克风领域,应用最广的就是PDM接口,其次为I2S接口。PDM格式的音频信号可以在比如LCD屏这样Noise干扰强的电路附近走线(等于没说,这里指数字信号抗干扰能力相比于模拟信号更强,同样PCM也具有此优势)。
下图为Maxim的Class-D类型功放MAX98358对PDM接口时序的要求,可以看到它在PDM_CLK的上升沿采样左声道数据,在PDM_CLK下降沿采样右声道数据。、
MIPI SLIMbus
SLIMbus详细介绍
SLIMBUS,全称 Serial Low-power Inter-chip Media Bus,是MIPI联盟指定的一种音频接口,用于连接基带/应用处理器和音频芯片,总线协议保证既能发控制信息,又能发数据信息,这样就可以替换传统的数据和控制两种接口如I2S和I2C。
SLIMbus v2.0是两线制,多分支TDM接口,支持多主机和多个设备。它采用以高达28MHz的单数据速率(SDR)运行的CMOS I / O,具有固定的帧大小,支持主控和时钟切换功能,以实现低功耗操作。SLIMbus v2.0还支持多个多通道,高质量音频流,相位相干性,以实现立体声,麦克风阵列和其他引人注目的功能。它还支持每台设备最多八个通道的可扩展带宽,以使峰值聚合带宽最高达到224Mbps。
MIPI SoundWire
MIPI SoundWire是MIPI SLIMbus的补充规范。SoundWire于2014年推出,整合了移动和PC行业音频接口中的关键属性,并提供了一种通用的,可扩展的体系结构,可用于在各个细分市场的多种类型的设备中启用全面的音频功能。
MIPI SoundWire是一个统一接口,主要用于小型音频外围设备。它针对低复杂度,低门数设计进行了优化,以支持在手机中使用成本敏感的音频组件,例如数字麦克风,数字扬声器和高级放大器。此外,它可以优化扬声器保护,麦克风功率和性能,噪声消除以及“始终听”音频输入。
SoundWire具有许多SLIMbus功能。SoundWire v1.1还采用CMOS I / O,并支持多达11个从设备,多通道音频,PDM格式以及带内控制/中断/唤醒。但是,它以高达12.288MHz(高达24.576 Mbps)的双数据速率(DDR)模式运行,并支持可配置的帧大小和增强的低延迟协议。多达8个数据通道的可选多通道扩展可用于支持高端音频应用。例如,八通道192 KHz 24位音频需要8 * 24 * 192000 = 36.864 Mbps,这将需要两个或更多通道,而它可能以较低的频率运行以相应地优化功率。
MIPI SoundWire和MIPI SLIMBus可以通过桥接解决方案在系统中协同运行,从而为移动或受移动平台影响的平台提供灵活而复杂的音频系统。
SLIMbus是具有成熟音频组件的成熟规范,已部署在高级智能手机和受移动设备影响的平台中。SoundWire作为高端智能手机平台中的数字麦克风和扬声器的推动者正在迅速获得发展势头.
其他SPDIFSony/Philips Digital Interface 是SONY、PHILIPS数字音频接口的简称。
就传输方式而言,SPDIF分为输出(SPDIF OUT)和输入(SPDIF IN)两种.
就传输载体而言,SPDIF又分为同轴和光纤两种,其实信号是相同的.
S/PDIF往往被用来传输压缩过的音频讯号,它由 IEC 61937标准而定制。
它通常被用在支持杜比技术或DTS 环绕效果的家用DVD影院上,不分正负。
A2B 协议ADI 针对 车内解决复杂布线 设定的协议 有主机 和从机 支持幻象供电 最多32路数据 双绞线 可以传输I2C 控制信号及数据
INIC 协议Microchip 针对车内实现音视频传输解决方案,最大支持50Mbps 带宽