http://www.wangdali.net/i2s/
1. PCM简介
PCM (脉冲编码调制)是一种通过以等间隔(即采样率)的时钟周期进行采样而将模拟信号数字化的方法。 图11是4比特采样深度的PCM数据量化图像。
图11.4位PCM的采样量化
是对PCM数字音频接口,即接口上传输的音频数据以PCM方式进行采样,以区别于PDM方式。 在音频领域,PCM接口与I2S一样,经常用于板级音频数字信号的传输。 PCM和I2S的区别在于数据相对于帧时钟(FSYNC/WS )的位置、时钟极性和帧长度。 实际上,传输到I2S的也是PCM类型的数据,所以可以说I2S只是PCM接口的特例。
PCM接口APP应用程序比I2S接口更灵活。 时分复用(TDM,Time Division Multiplexing )方法支持同时传输最多n个PCM接口的N8 )通道数据,从而减少了管脚数(实际上是I2S的“groogle”) 因为每个组I2S只能传输2通道的数据。 TDM并不像I2S那样具有统一的标准,不同的IC厂商在应用TDM时可能会有一些差异,这些差异体现在时钟极性、通道配置的触发条件、空闲通道的处理等方面。
TDM/PCM数字音频接口的硬件拓扑也接近I2S。 图12示出了使用DSP作为主设备来控制ADC和DAC之间的数字音频流的示例。
综合多家厂商的数据手册,笔者在使用PCM音频接口传输麦克风等单声道数据时,其接口名称为PCM2通道为http://www.sision
图12.TDM系统的框图
I2S
PCM接口与I2S类似,电路信号如下。
3358www.Sina.com/数据时钟信号TDM帧同步时钟信号2. 信号定义接收数据信号PCM_CLK发送数据信号TDD
表2.PCM vsI2S接口
PCM_SYNC
根据SD相对于帧同步时钟FSYNC的位置,TDM分为PCM_IN基本模式:
3358www.Sina.com/数据在FSYNC中启用后,BCLK的第PCM_OUT个上升沿启用后,BCLK的http://
图13.TDM模式a
图14.TDM模式b
3. 操作模式
由于没有统一标准,模式a和模式b的定义可能因制造商而异。
在实际APP应用中,始终在帧同步时钟FSYNC的上升沿表示一次传输的开始。 帧同步时钟的频率始终与音频采样率相同,如44.1 kHz和48 kHz。 大多数APP应用程序只在FSYNC的上升沿,而忽略下降沿。 根据要施加的FSYNC脉冲宽度的不同,PCM帧同步时钟模式大致可以分为两种。
http://www.Sina.com/longframesync http://www.Sina.com/shortframesync长帧同步和短帧同步的定时模式如下图16和图17所示。
两种
3358www.Sina.com/长帧同步,如图15所示,FSYNC脉冲宽度等于一个Mode A(I2S format):的长度。 在TDM中,Slot表示传输一个通道所需的位数。 在图15中所示的TI McASP接口的TDM包含6个Slots,即最多可以包含6个信道的数据。 请注意,Slot的位数不一定与音频量化的深度相同。 例如,Slot为2,Mode B(LJ):有效数据位(Audio Word )1零填充) zero papa 不同的制造商对Slot的称呼可能有差异。 例如,Circus Logic称为通道块;
图15. 长帧同步模式
b. 短帧同步,FSYNC脉冲宽度等于1个BCLK周期长度;
c. 由于没有统一标准,不同厂商对FSYNC脉冲宽度及触发边沿的设置可能不同,以器件手册为准。
图16. 8-bit长帧同步模式
图17. 16-bit短帧同步模式
4. 时钟(BCLK)频率的计算
FSYNC的频率等于音频的采样率(例如44.1 kHz,48 kHz等)。Frame每次传输包括所有声道的数据。PCM采样音频数据量化深度一般在16-32bit(最常见为16/24bit)。那么对于8声道,每个声道32bit音频数据,采样率48kHz的系统,TDM的BCLK时钟速率为:8 × 32 × 48kHz = 12.288 MHz
在器件Datasheet中可以见到TDM128/TDM256/TDM384/TDM512等说法,数字的含义为单个TDM数据帧包含数据的比特数(即帧长)。如上例8声道(Channels)32bit的音频数据,亦称为TDM256(=8*32)。TDM系统时钟速率就可以简单地用采样率乘以TDM帧长计算得出。相同的例子,TDM系统时钟速率:48kHz × 256 = 12.288 MHz
下表4列出系统时钟SCK/BCLK和采样率fs及TDM帧长的关系:
表4. 常见音频采样率对应的系统时钟
5. 数据格式
在PCM/TDM传输的数据帧(Slots)中,可能还包括音频数据之外的信息。比如在CSR BC06器件Datasheet说明,其设置为16 bit Slot字长时,3或8 bit未使用bit可以用作标签位(Sign Extension)、零填充(Zeros Padding)或是兼容Motorola编解码器的3 bit音频衰减值,如图18所示。
图18. 16-bit位采样字格式
转载于:https://www.cnblogs.com/fellow1988/p/11055680.html