分享

I2S,PCM,AC97 音频总线

 dwlinux_gs 2015-07-10

IIS是PCM 的一个子集,接口定义都是一样, IIS的采样频率一般为44.1KHZ 和48KHZ 做,PCM 采样频率一般为8K,16K。有四组信号:  位时钟信号,同步信号,数据 ,输入,数据输出。

PCM 一般传单声道的声音,也可以传立体声。IIS 一般传立体声。数据格式都为PCM 格式。

       左(右)声道的一个点一般为16 位,两个声道加起来为32 位。IIS 为一个周期传2 点。

PCM 接口总线(脉冲编码调制

针对不同的数字音频子系统,出现了几种微处理器或DSP与音频器件间用于数字转换的接口。最简单的音频接口是PCM(脉冲编码调制)接口,该接口由时钟脉冲(BCLK)、帧同步信号(FS)及接收数据(DR)和发送数据(DX)组成。在FS信号的上升沿,数据传输从MSB(Most Significant Bit)字开始,FS频率等于采样率。FS信号之后开始数据字的传输,单个的数据位按顺序进行传输,1个时钟周期传输1个数据字。发送MSB时,信号的等级首先降到最低,以避免在不同终端的接口使用不同的数据方案时造成MSB的丢失。PCM接口很容易实现,原则上能够支持任何数据方案和任何采样率,但需要每个音频通道获得一个独立的数据队列。这是因为PCM信号,一个声道采集是一个数据队列,多个数据队列在PCM格式中没法融合到一个数据队列上。不像AC97有控制tag可以区分,IIS有LRCLK来区分左右声道数据,这是有差别的。

 

 (1) 时钟脉冲位时钟BCLK : BCLK 的频率=2 ×采样频率×采样位数

 (2) 帧同步信号SYNC(SVLRCK);  该信号为低时该帧数据有效;两种方式,即A 模式和B模式一种为和数据同时有效,令一种为滞后数据一个周期。如在AL5610 中P22 关系图。采样频率一般为8K 16k;

(3) 接收数据VSADC

(4) 发送数据VSDAC


 

IIS总线接口

IIS接口(Inter-IC Sound)在20世纪80年代首先被飞利浦用于消费音频,并在一个称为LRCLK(Left/Right CLOCK)的信号机制中经过多路转换,将两路音频信号变成单一的数据队列。当LRCLK为高时,左声道数据被传输;LRCLK为低时,右声道数据被传输。与PCM相比,IIS更适合于立体声系统(因为可以传送多个声道的数据,所以显然更加适合Stereo Single,其实所谓的立体声,也就是多个声道可以发出不一样的声音)。对于多通道系统,在同样的BCLK和LRCLK条件下,并行执行几个数据队列也是可能的。

(1)   串行数据信号I2SDI/I2SDO,用于传输二进制补码表示的音频数据。

(2) 字段选择线 LRCK(也称帧时钟): 高时传左声道数据,低传右声道数据。采样频率:44.1K,48K.

(3) 时钟信号线 SCLK: SCLK 的频率=2 ×采样频率×采样位数


 

从时序图可以看出,I2S左右声道分别为高低电平,PCM只有一个起始信号,左声道数据紧跟右声道.

 

欧洲的30 路脉冲码调制PCM 简称E1,速率是2.048Mbit/s。我国采用的是欧洲的E1标准。E1 的一个时分复用帧(其长度T=125us即取样周期125 微秒)共划分为32相等的时隙,时隙的编号为CH0~CH31。其中时隙CH0 用作帧同步用,时隙CH16 用来传送信令,剩下CH1~CH15 和CH17~CH31  共30 个时隙用作30 个话路。每个时隙传送8bit,因此共用256bit。每秒传送8000 个帧,因此PCM 一次群E1 的数据率就是2.048Mbit/s。

 

1、一条E1 是2.048Mbps 的链路,用PCM 编码。

2、一个E1 的帧长为256 个bit,分为32 个时隙,一个时隙为8 个bit。

3、每秒有8000 个E1 的帧通过接口,即8K*256=2048kbps 。

4、每个时隙在E1 帧中占8bit,8*8k=64k,即一条E1 中含有32 个64K。

 

3. AC97总线接口

AC'97Audio Codec 1997)是以Intel为首的五个PC厂商IntelCreative LabsNSAnalog DeviceYamaha共同提出的规格标准。与PCMIIS不同,AC'97不只是一种数据格式,用于音频编码的内部架构规格,它还具有控制功能。AC'97采用AC-Link与外部的编解码器相连,AC-Link接口包括位时钟(BITCLK)、同步信号校正(SYNC)和从编码到处理器及从处理器中解码(SDATDINSDATAOUT)的数据队列。AC'97数据帧以SYNC脉冲开始,包括1220位时间段(时间段为标准中定义的不同的目的服务)及16“tag”段,共计256个数据序列。例如,时间段“1”“2”用于访问编码的控制寄存器,而时间段“3”“4”分别负载左、右两个音频通道。“tag”段表示其他段中哪一个包含有效数据。把帧分成时间段使传输控制信号和音频数据仅通过4根线到达9个音频通道或转换成其他数据流成为可能。与具有分离控制接口的IIS方案相比,AC'97明显减少了整体管脚数。一般来说,AC'97 编解码器采用TQFP48封装。

AC97除传输数字音频信号外,还可以传输控制信号,寄存器读/写等命令

(1) 位时钟BITCLK : 由AC97编码芯片产生,通常编码芯片时钟固定为24.576MHz

(2) 同步信号校正 SYNC: 同步信号

(3) SDATDIN : 串行数据输入

(4) SDATAOUT : 串行数据输出

 


 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多