数字音频介绍

作者:admin时间:2019-11-13 16:24:22

音频基本知识介绍

目录
音频基本知识介绍        
1 概述        
2 I2S接口介绍        
2.1 I2S简介        
2.2 信号及时钟( BCLK,SCLK, MCLK, WCLK)        
2.3 I2S操作模式        
3 PCM接口        
3.1 PCM简介        
3.2 信号及时钟        
3.3 数据格式        
4 音频中常见问题定位        
4.1 codec 给 voip发数据,voip接受不到        
4.2 其他问题待补充        

 

1 概述
什么是立体声?
什么是TDM模式?
什么是短帧模式,什么是长帧模式,什么是slot?
什么是BCLK,什么是采样频率?

如果这些音频中的基本概念, 你都清楚, 那么这个文档就不用看了. 此文档编写的目的是针对音频入门中的基本概念的解释及介绍.


数字音频接口 DAI,即Digital Audio Interfaces.传统的音频信号链路如下图所示:

 图1:

   

 图1 传统的音频信号链路
在传统的音频电路(图1)中有麦克风、前置放大器、模/数转换器ADC、数/模转换器DAC、输出放大器,以及扬声器,它们之间使用模拟信号连接。随着技术的发展和对性能考虑,模拟电路逐渐被推到链路的两端(集成到设备内部),信号链中各集成电路间将出现更多的数字接口形式。DSP通常都是数字接口的;换能器(、放大器一般而言只有模拟接口,但现在也正在逐渐集成数字接口功能。目前,集成电路设计人员正在将换能器内的ADC、DAC和调制器集成到信号链一端,这样就不必在PCB上走任何模拟音频信号,并且减少了信号链中的器件数量。

回到开始提的问题, 什么是立体声?
立体声就是前端有多个音频采集设备,从多个角度采集音频数据, 将数据放到不通的通道上.例如采集是8KHz(每秒采集8000个点), 位宽16bit(每个点用16个bit位量化), 假设有三个通道,那我们每秒需要传输的bit数据为 8K * 16 * 3 bit. 这个数据就是我们的BCLK, 8K可以理解为FS,选择哪个声道的数据.这三个声道采集的数据就是立体声了.下文会对时钟及数据格式做更进一步的阐述.


2 I2S接口介绍
2.1 I2S简介
I2S全称Inter-IC Sound, Integrated Interchip Sound,或简写IIS,是飞利浦在1986年定义(1996年修订)的数字音频传输标准,用数字音频数据在系统内部器件之间传输,例如编解码器CODEC、DSP、数字输入/输出接口、ADC、DAC和数字滤波器等。I2S是比较简单的数字接口协议,没有地址或设备选择机制。在I2S总线上,只能同时存在一个主设备和发送设备。主设备可以是发送设备,也可以是接收设备,或是协调发送设备和接收设备的其它控制设备。在I2S系统中,提供时钟(SCK和WS)的设备为主设备。图2是常见的I2S系统框图。在高端应用中,CODEC经常作为I2S的主控设备以精确控制I2S的数据流

图2:

图2 常见I2S系统框图
I2S包括两个声道(Left/Right)的数据,在主设备发出声道选择/字选择(WS)控制下进行左右声道数据切换。通过增加I2S接口的数目或其它I2S设备可以实现多声道(Multi-Channels)应用
 2.2 信号及时钟( BCLK,SCLK, MCLK, WCLK)
在I2S传输协议中,数据信号、时钟信号以及控制信号是分开传输的。I2S协议只定义三根信号线:时钟信号SCLK、数据信号SD和左右声道选择信号WS。
•        时钟信号 Serial Clock
SCLK是模块内的同步信号,从模式时由外部提供,主模式时由模块内部自己产生。不同厂家的芯片型号,时钟信号叫法可能不同,也可能称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),这样可以让从设备有足够的时间以存储当前接收的数据,并准备好接收下一组数据。
        Master Clock 
在I2S/PCM接口的ADC/DAC系统中,除了SCK和WS外,CODEC经常还需要控制器提供MCLK(Master Clock),这是由CODEC内部基于Delta-Sigma (Δ∑)的架构设计要求使然。MCLK时钟频率一般为256*WS,具体参考特定器件手册。
Delta-Sigma (Δ∑)的架构设是什么?

 2.3 I2S操作模式
根据SD相对于SCK和WS位置的不同,I2S分为三种不同的操作模式,分别为标准I2S模式、左对齐模式和右对齐模式:
•        I2 Phillips Standard  I2S格式
•        Left Justified Standard 左对齐格式
•        Right Justified Standard右对齐格式
I2S模式属于左对齐中的一种特例,也叫PHILIPS模式,是由标准左对齐格式再延迟一个时钟位变化来的。时序如图3所示,左声道的数据MSB在WS下降沿之后第二个SCK/BCLK上升沿有效,右声道数据的MSB在WS上升沿之后第二个SCK/BCLK上升沿有效。 

图3:

图3 I2S PHILIPS模式

标准左对齐较少使用,图4为左对齐时序图,和PHILIPS格式(图3)对比可以看出,标准左对齐格式的数据的MSB没有相对于BCLK延迟一个时钟。左对齐格式的左声道的数据MSB在WS上升沿之后SCK/BCLK的第一个上升沿有效;右声道的数据MSB在WS下降沿之后SCK/BCLK第一个上升沿有效。标准左对齐格式的优点在于,由于在WS变化后的第一个SCK上升沿就开始采样,它不需要关心左右声道数据的字长,只要WS的时钟周期足够长,左对齐的方式支持16-32bit字长格式。

图4:

图4左对齐操作模式
标准右对齐也叫日本格式,EIAJ (Electronic Industries Association of Japan) 或SONY格式,图5为右对齐时序图。右对齐格式左声道的数据LSB在WS下降沿的前一个SCK/BCLK上升沿有效,右声道的数据LSB在WS上升沿的前一个SCK/BCLK上升沿有效。相比于标准左对齐格式,标准右对齐的不足在于接收设备必须事先知道待传数据的字长。这也解释了为什么许多CODEC都会提供多种右对齐格式选择功能。

图5:

图5 左对齐操作模式
SCLK的计算:
采样频率为8K Hz,声道选择信号也必须为8K Hz,声道的量化深度为16bit,则:SCK = 8K * 2 * 16.SCLK又称BCLK即每一个bit位都需要一个时钟.


3 PCM接口
3.1 PCM简介
PCM(Pulse Code Modulation) 是通过等时间隔(即采样率时钟周期)采样将模拟信号数字化的方法。图6为4 bit 采样深度的PCM数据量化示意图。

图6:

图6 4-bit PCM的采样量化
PCM数字音频接口,即说明接口上传输的音频数据通过PCM方式采样得到的。在音频领域,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时可能略有差异,这些差异表现在时钟的极性、声道配置触发条件和对闲置声道的处理等。一般在应用PCM音频接口传输单声道数据(如麦克风)时,其接口名称为PCM;双声道经常使用I2S;而TDM则表示传输两个及以上声道的数据,同时区别于I2S特定的格式。
3.2 信号及时钟
PCM接口与I2S相似,电路信号包括:
•        PCM_CLK  数据时钟信号
•        PCM_SYNC 帧同步时钟信号
•        PCM_IN   接收数据信号
•        PCM_OUT  发送数据信号
根据有效数据相对帧同步时钟FSYNC的位置,TDM分两种基本模式:
•        Mode A: 数据在FSYNC有效后,BCLK的第2个上升沿有效(图7)
•        Mode B: 数据在FSYNC有效后,BCLK的第1个上升沿有效(图8)

图7:

图7 TDM Mode A

图8:

图8 TDM Mode B
•        长帧同步 Long Frame Sync
•        短帧同步 Short Frame Sync
长帧同步,短帧同步时序模式如下图9和图10所示。

注:
a. 长帧同步,如图9所示,FSYNC脉冲宽度等于1个Slot的长度。Slot在TDM中表示的是传输单个声道所占用的位数。如图9所示TI McASP接口的TDM包括6个Slots,即它最多可包括6声道数据。注意,slot的位数并不一定等于音频的量化深度。比如Slot可能为32 bit,其中包括24 bit有效数据位(Audio Word) + 8 bit零填充(Zero Padding)。不同厂商对slot叫法可能有所区别,比如Circus Logic称之为Channel Block;

图9:

图9 长帧同步模式
b. 短帧同步,FSYNC脉冲宽度等于1个BCLK周期长度;

图10:

图10 短帧同步模式
c. 由于没有统一标准,不同厂商对FSYNC脉冲宽度及触发边沿的设置可能不同,以器件手册为准。
3.3 数据格式
在PCM/TDM传输的数据帧(Slots)中,可能还包括音频数据之外的信息。比如在CSR BC06器件Datasheet说明,其设置为16 bit Slot字长时,3或8 bit未使用bit可以用作标签位(Sign Extension)、零填充(Zeros Padding)或是兼容Motorola编解码器的3 bit音频衰减值,如图11所示。

图11:

图11. 16-bit位采样字格式

4 音频中常见问题定位
4.1 codec 给 voip发数据,voip接受不到
Pcm数据发送的时候, SYNC信号过后, 第几个BCLK开始为有效数据很重要,接收端要精确匹配才能收到数据.
例如, codec 端pcm 数据移了一位, 那接收数据端就要跟着移一位或者两位. 具体移几位要看发送端的TDM模式了,见3.2 节 TDM的两张基本模式

4.2 其他问题待补充
 

0755-23777910