作者:FPGA入门到精通
在数字音频领域,I2S协议扮演着至关重要的角色。它不仅定义了音频数据的传输格式和时序,还确保了数据在不同设备间的高效、准确传输。
本文将带领FPGA初学者深入了解I2S协议的奥秘,探索其在FPGA开发中的应用。
一、I2S协议简介
I2S(Inter-IC Sound)协议由飞利浦公司开发,广泛用于音频设备间音频数据的串行传输。
它通过定义数据传输的格式、时序和控制信号,使得音频数据能够在不同的数字音频设备间无缝传输 。
二、I2S基本信号
I2S协议涉及三种基本信号线:时钟线(SCK)、左/右声道线(LRCK)和数据线(SD)。
(1)串行时钟SCK
SCK提供同步音频数据传输的时钟信号,也叫BCLK,其频率是采样频率和位宽的函数 。
数字音频的每一位数据,对应一个脉冲。
SCK的时钟频率 = 音频声道数 * 采样频率 * 采样位数。
(2)字段选择信号WS
字段选择信号WS,也叫LRCK,指表示当前传输的是左声道还是右声道的音频数据 。
I2S Philips标准WS信号电平定义如下:
WS为0,表示正在传输左声道数据;WS为1,表示正在传输右声道数据。
(3)串行数据SD
SD线则负责传输实际的音频数据,其位宽通常为16位或32位 ,用二进制补码表示,传输模式MSB,先发送高位,再发送低位。
三、I2S参数解析
位宽:决定了每个采样数据的位数,影响音频数据的分辨率和动态范围。
时钟极性:确定了数据位传输的时钟沿,可以是上升沿或下降沿。
帧同步极性:确定了帧同步信号的有效电平,指示音频数据的帧起始和结束位置。
传输格式:定义了音频数据的编码方式和声道数据的传输顺序 。
四、主从工作模式
I2S协议支持主模式和从模式两种工作方式。
在主模式下,设备提供时钟信号和帧同步信号;
在从模式下,设备则依赖其他模块提供这些信号 。
五、数据传输模式
I2S协议支持三种数据传输模式:飞利浦标准模式、左对齐和右对齐模式。每种模式都有其特定的数据传输时序和特点 ,其中飞利浦标准模式应用最为广泛。
1、飞利浦(Philips)标准模式
六、FPGA中的I2S应用
在FPGA中,I2S协议常用于音频数据的采集、处理和传输。
1、音频数据的采集与播放
FPGA可以通过I2S协议与ADC(模拟/数字转换器)和DAC(数字/模拟转换器)进行通信,实现音频数据的采集和播放。
例如,将模拟信号通过ADC转换为数字信号,经过FPGA处理后再通过DAC还原为模拟信号输出。
2、数据中转
在一些项目中,FPGA作为数据中转的角色,将多路I2S数据合并或转换,然后输出到其他设备,如CPU或其他数字音频处理器。
3、多声道处理
通过增加I2S接口的数量或使用其他I2S设备,FPGA可以处理多声道音频数据,适用于多声道音频系统的设计。
使用时分复用(TDM):I2S协议通过时分复用技术来支持多声道数据传输。在TDM模式下,多个声道的数据在同一个数据线上交替传输。
也可以使用更高级的接口如PCM或AC'97。