FPGA卡拉ok系统--i2s输入输出

2020-10-22 10:20:09 浏览数 (1)

1 硬件需求介绍

图1 卡拉ok硬件系统

1)麦克风(microphone)

2)音频ADC --PCM1080或其他音频ADC

3)FPGA --卡拉ok系统

4)音频DAC--PCM5102A

5)音响

6)显示屏

2 音频ADC DAC介绍

1) 音频adc--pcm1080

PCM1808单端,模拟输入24位,96kHz立体声ADC。

性能:

– THD N:–93 dB(典型值)

– SNR:99 dB(典型值)

–动态范围:99 dB(典型值)

过采样抽取滤波器:

–过采样频率:×64

–通带纹波:±0.05 dB

–阻带衰减:–65 dB

–片上高通滤波器:0.91 Hz(48 kHz)

PCM音频接口:

–主模式或从模式可选

–数据格式:24位I2S,24位左对齐

采样率:8 kHz–96 kHz

图2 PCM1080 框图

2)音频dac--PCM5102a:

PCM510xA 2.1 VRMS,112/106/100 dB音频立体声DAC具有PLL和32位384 kHz PCM接口。

PCM510xA 的动态范围、SNR以及THD的表现:

图3 PCM5102A框图

3 FPGA硬件系统介绍

图4 fpga内部音频算法系统

音频模拟信号经过音频adc采集后转化为数字信号通过I2S送入FPGA,FPGA内部可做均衡器算法,反馈抑制算法,高低通滤波器混响回声以及变声的音频处理算法。

4 i2s的接收与发送

1)i2s概述

I2S(Inter—IC Sound)总线, 又称 集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专门用于音频设备之间的数据传输,广泛应用于各种多媒体系统。I2S采用了沿独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真,为用户节省了购买抵抗音频抖动的专业设备的费用。

在飞利浦公司的I2S标准中,I2S主要有三个信号。

1.位时钟 BICK(也叫串行时钟SCLK),即对应数字音频的每一位数据,BCLK都有1个脉冲。BCLK的频率=2×采样频率×采样位数。

2.帧时钟LRCK,(也称WS),用于切换左右声道的数据。LRCK为“1”表示正在传输的是右声道的数据,为“0”则表示正在传输的是左声道的数据。LRCK的频率等于采样频率。

3.串行数据SDATA,就是用二进制补码表示的音频数据。

有时为了使系统间能够更好地同步,还需要另外传输一个信号MCLK,称为主时钟,也叫系统时钟(Sys Clock),是采样频率的256倍或384倍。随着技术的发展,在统一的 I2S接口下,出现了多种不同的数据格式。根据SDATA数据相对于LRCK和SCLK的位置不同,分为左对齐(较少使用)、I2S格式(即飞利浦规定的格式)和右对齐(也叫日本格式、普通格式)。

以下是I2S Sample rate 44.1Khz 和48Khz部分系列。

2) 模式

左对齐模式:SDATA 的MSB在BCLK的第一个上升获得根据LRCK的传输。

I2S模式:SDATA 的MSB在BCLK的第二个上升获得根据LRCK的传输。

右对齐模式。

0 人点赞