多路音频采集器

目录

摘要 . ................................................................................................................................................... 1

关键字 . ............................................................................................................................................... 1

1 绪论 . ............................................................................................................................................... 1

1.1课题研究的目的和意义 . ...................................................................................................... 1

1.2课题研究的内容 . .................................................................................................................. 1

1.3国内外研究现状 . .................................................................................................................. 1

2. 数字音频概述 . .............................................................................................................................. 3

2.1 数字音频的概念 . ................................................................................................................. 3

2. 2模拟音频数字化的过程 . ..................................................................................................... 3

2.2.2 量化 . ........................................................................................................................... 4

2.2.3 编码 . ........................................................................................................................... 4

2.3主要技术指标 . ...................................................................................................................... 4

2.3.1 采样精度 . ................................................................................................................... 4

2.3.2 比特率 . ....................................................................................................................... 5

3. 整体方案设计 . .............................................................................................................................. 6

3.1 系统欲实现的功能: . ......................................................................................................... 6

3.2 系统采用的关键技术 . ......................................................................................................... 6

3.2.1自动增益控制(AGC ) ............................................................................................ 7

3.2.2 采样 . ........................................................................................................................... 7

3.2.3 缓冲 . ........................................................................................................................... 7

4. 硬件系统设计 . .............................................................................................................................. 8

音频采集板整体结构设计 . ................................................................................................. 8

4.1 AIC31电路设计 ................................................................................................................... 8

4.1.1 AIC31简介 ................................................................................................................. 8

4.1.2 AIC31配置方案选择 ................................................................................................. 9

4.1.3模拟音频输入 . ............................................................................................................ 9

4.1.4自动增益控制(Automatic Gain Control,AGC) . ...................................................... 9

4.1.5 A/D转换 ..................................................................................................................... 9

4.1.6串行音频数据接口 . .................................................................................................. 10

4.1.7 AIC31与CPLD 的接口 . .......................................................................................... 10

4.2音频数据缓冲设计 . ............................................................................................................ 10

4.2.1 缓冲方案选择 . ......................................................................................................... 10

4.2.2 缓冲区大小选择 . ..................................................................................................... 11

4.2.3音频数据缓冲区电路设计 . ...................................................................................... 11

4.3 CPLD................................................................................................................................... 12

5. 软件系统设计 . .......................................................................................................................... 13

5.1软件开发所使用工具 . ........................................................................................................ 13

5.2 顶层设计 . ........................................................................................................................... 13

5.2.1 CPLD与其它各部分的关系.................................................................................... 13

5.2.2 CPLD顶层模块划分................................................................................................ 13

5.3 UC接口模块设计 .............................................................................................................. 14

5.3.1 启动/停止信号的检测............................................................................................. 14

5.3.2中断信号的产生 . ...................................................................................................... 14

5.3.3 LED状态控制 .......................................................................................................... 15

5.4 ADC接口模块设计............................................................................................................ 15

5.4.1 CPLD与AIC31的串行数字音频接口................................................................... 16

5.4.2 时钟产生器(clk_gen)...................................................................................................... 16

5.5 RAM控制模块设计........................................................................................................... 16

5.5.1写RAM 时序............................................................................................................ 17

5.5.2 RAM控制主状态机................................................................................................. 17

5.5.3地址产生器 . .............................................................................................................. 17

5.6 波形仿真和结果分析 . ....................................................................................................... 18

5.6.1 ADC接口模块仿真.................................................................................................. 18

5.6.2 RAM控制模块仿真................................................................................................. 18

5.6.3 UC接口模块仿真 .................................................................................................... 19

5.6.4 顶层设计仿真 . ......................................................................................................... 19

6. 总结和展望 . ................................................................................................................................ 21

参考文献 . ......................................................................................................................................... 22

致谢 . ................................................................................................................................................. 23

多路音频采集器

摘要:随着人们需求的变化,越来越多的应用场合需要多路音频的同时采集。在查阅大量资料

的基础上,本文设计出一种多路音频采集器,系统采用CPLD 技术,实现了四路模拟音源的同时

实时采集。最后,经仿真测试达到了预期要求。

关键字:数据音频;应用现状;发展趋势 ;CPLD ;双口RAM

1 绪论

1.1课题研究的目的和意义

最初,人们通过模拟信号来实现音频的处理和传递,音频信号的传输一般是一路信号占用一对线,如需要传输多路音频信号,就必须采用多芯电缆或多根电线,系统布线十分复杂,成本较高,更无法实现多路音频信号灵活的路由和对音频信号的远程控制。与数字信号相比,模拟信号有着许多无法克服的缺点,如控制性较差,易受干扰,保密性不好等。随着电子技术的发展,人类进入了数字化时代,音频信号的数字化是大势所趋。数字音频技术在社会生活中的应用越来越广泛,因此,对数字音频领域的研究有着非常广阔的前景。

互联网技术的广泛应用为音频信号的传输提供了极大的便利。网络已经渗透到了社会生活的各个方面,利用现有的网络资源,通过网络进行数字音频信号的传输和交换代表了未来音频技术的发展方向[1]。

1.2课题研究的内容

本课题通过对模拟音频信号与数字音频信号的比较,对数字音频技术的相关理论进行探讨,预设计出一款能够对多路音频进行同时采集的系统。

1.3国内外研究现状

随着音频市场的不断迅速发展,不仅涌现出各种标准与新的音频功能。而且业界也在持续地改进产品的音质,现在已经进入新的数字音频时代。

数字音频压缩技术在各种音乐供应和传送的体系中,扮演着一个重要的角色,其影响范围涵盖包括如CD 、SACD 、DVD 、DVD-Audio 、MP3-CD 等媒体,或是包括如网络或有线电视、卫星等能提高储存、频宽效率的网络媒体。

采集器是80年代中期出现的先进技术, 是一种具有现场记录和离线分析机器设备状态数据功能的便携式分析仪器。它把安装在机器设备上的振动传感器和过程传感器所测得物理量作为输入, 配合各种测量分析技术以及多样化的显示格式组成一个监测系统, 应用于对机器设备进行定期巡回状态监测和故障诊断。它能和计算机结合在一起成为独立的监测分析系统,

是现代机器设备的计算机辅助诊断手段之一。这类技术在我国推广应用后, 已取得了良好的效果。据不完全统计, 全国目前生产数据采集器的厂已有14家之多,且具有相当的技术水平,应用进口或国产数据采集器进行设备状态监测和诊断的企业已有数百家、短短几年, 我国的数据采集器技术已从无到有发展到一定水平。我国音频采集器的产品具有现具有可输入各类视频、音频信号;可同时采集模拟音频、视频(双制式)配合视频捕捉软件可制作音视频文件、VCD 光盘的特点。

当前,大多数音频流服务器是通过PC 获取数据,或者是用其它方法将采集到的数据传给PC ,然后通过PC 将数据传送到网上,系统成本过高, 且大多只能实现单路音频的采集。随着人们需求的变化,越来越多的应用场合需要多路音频的同时采集。所以本论文所设计的音频采集器具有很广泛的应用前景[2]。

2. 数字音频概述

2.1 数字音频的概念

人类能够听到的所有声音都称之为音频,它可能包括噪音、说话声、歌声、乐器声等。我们可以听见的声音经过音频线或话筒的传输都是一系列的模拟信号。模拟信号是我们可以听见的。而数字信号就是用一堆数字记号来记录声音,而不是用物理手段来保存信号。(用普通磁带录音就是一种物理方式)数字信号我们实际上是听不到的。

模拟声音在时间上是连续的,而数字音频是一个数据序列,在时间上是断续的。数字音频是通过采样和量化,把模拟量表示的音频信号转换成由许多二进制数1和0组成的数字音频信号。

计算机内的基本数制是二进制,为此我们也要把声音数据写成计算机的数据格式,这称之为编码音频数字化,计算机内的音频必须是数字形式的,因此必须把模拟音频信号转换成有限个数字表示的离散序列,即实现音频数字化。在这一处理技术中,涉及到音频的抽样、量化和编码[3]。

2. 2模拟音频数字化的过程

信号的数字化就是将连续变化的模拟信号转换成离散的数字信号,一般需要完成采样、量化和编码三个步骤,如图2-1所示。采样是指用每隔一定时间间隔的信号样本值序列代替原来在时间上连续的信号,也就是在时间上将模拟信号离散化。量化是用有限个幅度值近似原来连续变化的幅度值,把模拟信号的连续幅度变为有限数量、有一定间隔的离散值。编码则是按照一定的规律,把量化后的离散值用二进制数码表示。上述数字化的过程又称为脉冲编码调制(Pulse Code Modulation,PCM) ,通常由模拟/数字(A/D)转换器来实现[4]。

模拟音频信号数字码流

图2-1 音频信号的数字化

Fig2-1 the digitization of audio signal

数字音频信号经过处理、记录或传输后,当需要重现声音时,还必须还原为连续变化的模拟信号。将数字信号转换成模拟信号的转换称为数字/模拟 (D/A)转换。

2.2.1 采样

模拟信号不仅在幅度取值上是连续(连续的含义是指在某一取值范围内可以取无穷多个数值) 的,而且在时间上也是连续的,即每个时刻都存在一个信号幅度值与之对应。要使模拟信号数字化,首先要在时间上进行离散化处理,即在时间上用有限个采样点来代替连续无限的坐标位置。

采样是每隔一定的时间间隔,抽取信号的一个瞬时幅度值(样本值) 。采样的时间间隔称为采样周期;每秒内采样的次数称为采样频率。采样后所得出的一系列在时间上离散的样本

值称为样值序列。根据奈奎斯特(Nyquist)采样定理,一个带宽限制的模拟信号可以用一个样值序列信号来表示而不会丢失任何信息,只要采样频率f s 大于或等于被采样信号的最高频率f m 的2倍,就可以通过理想低通滤波器,从样值序列信号中无失真地恢复出原始模拟信号。也就是说,在满足奈奎斯特采样定理的条件下,在时间上离散的信号包含有离散前模拟信号的全部信息。

2.2.2 量化

采样把模拟信号变成了时间上离散的样值序列,但每个样值的幅度仍然是一个连续的模拟量,因此还必须对其进行离散化处理,将其转换为有限个离散值,才能最终用数码来表示其幅值。这种对采样值进行离散化的过程称为量化。从数学的角度看,量化就是把一个取连续值的无限集合{x},通过变换Q ,映射到一个只有L 个离散值的集合{yk },k =1,2,„,L 。

如图2-2所示,当输入电平x 落入[xk ,x k+1) 时,量化器输出为y k ,即

y = Q(x) = yk 当x ∈[xk ,x k+1) ,k =1,2,„,L (2-1)

式(2-1)中,x k 称为量化判决电平或分层电平,y k 称为第k 个量化电平,L 称为量化级数或量化层次数。Δk =x k+1-x k ,称为第k 个量化台阶(或称量化步长) 。

量化判决电平量化输出电平

x k+1

x k y k

图2-2 量化示意图

Fig2-2 The chart of quantifing

2.2.3 编码

采样、量化后的信号还不是数字信号,需要把它转换成数字编码脉冲,这一过程称为编码。最简单的编码方式是二进制编码。具体说来,就是用n 比特二进制码来表示已经量化了的样值,每个二进制数对应一个量化电平,然后把它们排列,得到由二值脉冲串组成的数字信息流。用这样方式组成的二值脉冲串的频率等于采样频率与量化比特数的积,称为所传输数字信号的数码率。显然,采样频率越高,量化比特数越大,数码率就越高,所需要的传输带宽就越宽。

2.3主要技术指标

2.3.1 采样精度

因为Wave 是数码信号,它是用一堆数字来描述原来的模拟信号,所以它要对原来的模拟信号进行分析,所有的声音都有其波形,数码信号就是在原有的模拟信号波形上每隔一段时间进行一次“取点”,赋予每一个点以一个数值,这就是“采样”,然后把所有的“点”连起来就可以描述模拟信号,在一定时间内取的点越多,描述出来的波形就越精确,这个尺度就称

为“采样精度”。最常用的采样精度是44.1kHz/s。意思是每秒取样44100次,之所以使用这个数值是因为经过了反复实验,人们发现这个采样精度最合适,低于这个值就会有较明显的损失,而高于这个值人的耳朵已经很难分辨,而且增大了数字音频所占用的空间。一般为了达到“万分精确”,我们还会使用48k 甚至96k 的采样精度,实际上,96k 采样精度和44.1k 采样精度的区别绝对不会象44.1k 和22k 那样区别如此之大,CD 的采样标准就是44.1k ,目前44.1k 还是一个最通行的标准,但有些人认为96k 将是未来录音界的趋势。

2.3.2 比特率

作为数码录音,必须也要能精确表示乐曲的轻响,比特”就是这样一个对波形的振幅有精确的描述的单位,16比特就是指把波形的振幅划为216即65536个等级,根据模拟信号的轻响把它划分到某个等级中去,就可以用数字来表示了。和采样精度一样,比特率越高,越能细致地反映乐曲的轻响变化。刚才提到了一个名词“动态”,它其实指的是一首乐曲最响和最轻的对比能达到多少,还有一个专业名词“动态范围”,单位是dB ,而动态范围和录音时采用的比特率是紧密结合在一起的,如果使用了一个很低的比特率,那么就只有很少的等级可以用来描述音响的强弱,就不能听到大幅度的强弱对比了。动态范围和比特率的关系是;比特率每增加1比特,动态范围就增加6dB 。所以假如使用1比特录音,那么动态范围就只有6dB ,这样的音乐是不可能听的。16比特时,动态范围是96dB 。这可以满足一般的需求。20比特时,动态范围是120dB ,对比再强烈的交响乐都可以应付自如,表现音乐的强弱是绰绰有余了。发烧级的录音师还使用24比特,但是和采样精度一样,它不会比20比特有很明显的变化,理论上24比特可以做到144 dB的动态范围,但实际上是很难达到的,因为任何设备都不可避免会产生噪音,至少在现阶段24比特很难达到其预期效果[4] 。

3. 整体方案设计

在信息化日益加速发展的今天, 诸如远程教学、电话会议、网络广播等系统的应用迅速兴起, 在这些应用中, 高速音频数据采集技术成为其关键的环节。

近年来,随着可编程逻辑器件集成度的提高和成本的降低,在电子系统设计中应用越来越广泛,不仅能够使系统灵活,开发周期短,易于更新和维护,具有可扩展性,而且使系统小巧,稳定,功耗低,实时性强。况且,CPLD(复杂可编程逻辑器件) 基于Flash 结构,无需另配存储器,使用方便。因此,本系统中音频采集板的设计将以CPLD 为核心 代替这些分立元件, 克服了传统实现方法的不足, 充分利用了CPLD 的优越性, 使系统灵活, 开发周期短, 更具可扩展性 。并采用合适的缓冲机制, 既避免了过于频繁的中断微处理器, 减小了微处理器的压力, 又使音频信号的延迟达到最小. 如图3-1所示,

图3-1 系统整体结构图 Fig3-1 The structure chart of the whole system

音频采集板主要将各路模拟音频信号放大后转换成数字信号,然后存入数据缓冲区,以供上层系统读取。

3.1 系统欲实现的功能:

● 四路模拟音源的同时实时采集。模拟音源可以是麦克风输出或其它音频设备的模拟

音频输出。

● 模拟信号的数字化。

● 最高采样率:44.1kHz 。

● 采样精度:16位。

● AGC(自动增益控制) 功能。

3.2 系统采用的关键技术

本文预设计出一种多路音频采集器,将系统整体分为采样、转换及控制、数据缓冲3个部分。采样部分先将输入模拟音频信号放大,然后将模拟信号转换为数字信号。转换及控制

部分主要负责整个系统的控制,并将采样的数据转换为一定格式写入数据缓冲区。缓冲部分主要完成数据缓冲的功能。最后,实现了四路模拟音源的同时实时采集。

3.2.1自动增益控制(AGC )

AGC 功能能够根据输入音源信号幅度的大小,自动调节放大器的增益,当输入音源信号幅度过大时降低放大器增益,当输入音源信号幅度过小时提高放大器增益,从而在进行A/D转换之前使音频信号的幅度处于一个稳定的水平。若没有AGC 功能,当人口距麦克风过近或说话声音过大时,将可能由于放大器的削波现象而产生信号的失真,严重时将损坏终端播放设备;当人口距麦克风过远或说话声音过小时,在终端可能不能清楚地听见语音信号。因此,系统中具有AGC 功能是十分必要的。

3.2.2 采样

采样后所得出的一系列在时间上离散的样本值称为样值序列。根据奈奎斯特(Nyquist)采样定理,一个带宽限制的模拟信号可以用一个样值序列信号来表示而不会丢失任何信息,只要采样频率f s 大于或等于被采样信号的最高频率f m 的2倍,就可以通过理想低通滤波器,从样值序列信号中无失真地恢复出原始模拟信号。也就是说,在满足奈奎斯特采样定理的条件下,在时间上离散的信号包含有离散前模拟信号的全部信息[5] 。

3.2.3 缓冲

为了避免过于频繁的中断微控制器,减小微控制器的压力,而又使音频信号的延迟达到最小,系统中加入一定大小的数据缓冲区。

对于数据流的缓冲可以采用多种机制,可以用两片单口SRAM 实现的“乒乓”缓冲机制,也可用一片双口RAM 实现。用两片单口SRAM 实现时,需要额外的总线切换电路,所用器件较多,专用电路板的面积较大。因此,在这里选用一片双口RAM 作为数据缓冲区。

4. 硬件系统设计

音频采集板以CPLD 为核心,主要完成数据采集的功能,将各路模拟音频信号放大后转换成数字信号,然后存入数据缓冲区。

音频采集板整体结构设计

图4-1 音频采集板结构框图

Fig4-1 The structure diagram of audio sample board

如图4-1所示,音频采集板先将输入的四路模拟音源进行前置放大,经AGC 电路(自动增益控制) 将模拟音频信号的幅度稳定在一定的范围,再通过ADC 将模拟信号转换为数字信号。前置放大、AGC 、ADC 三者的功能由TI 公司的单个芯片Tlv320aic31(下文用AIC31表示) 完成。系统中使用低通滤波器去掉信号中不必要的高频成分,降低采样频率,避免频率混淆,去掉高频干扰。缓冲区由一片双口SRAM 构成。

CPLD 为AIC31提供工作时钟,并接收来自AIC31的串行数字音频信号,将串行数字信号转换为并行的,然后将四路数据分别写入各自的缓冲区,并通知网络微处理器从数据缓冲区中读取数据。CPLD 是整个音频采集板的核心,它控制着音频数据采集的各个部分,使各部分有序协调的工作。

4.1 AIC31电路设计

4.1.1 AIC31简介

AIC31是TI(Texas Instruments,德州仪器) 公司生产的一款集成了麦克风前置放大器、自动增益控制(AGC)、ADC 为一体的芯片。功耗低,可配置为单端输入或差分输入方式,基于寄存器的电源控制方式,可编程控制的麦克风偏置电压。立体声的音频ADC 支持8KHz 到96KHz 的采样率,内部可编程放大器的增益可达+59.5dB。AIC31内部还具有两个音频DAC ,

本系统不用。

串行控制总线支持I 2C 协议,通过I 2C 协议配置其内部寄存器,从而实现对AIC31的初始化及控制。

串行音频数据总线支持I 2S ,left/right justied,DSP 和TDM 模式。 AIC31内部具有PLL ,MCLK 范围广,从512KHz 到50MHz 。

每片AIC31内部具有两个ADC ,可采集两路音频数据,因此,要完成四路音频的同时采集,共需2片AIC31[6] 。 4.1.2 AIC31配置方案选择

本设计中同时采集四路音频数据,需用两片AIC31,虽然I 2C 总线上可以同时连接多个器件,但前提是每个Slave 器件的响应地址是唯一的,而AIC31的用于配置内部寄存器的I 2C 接口只能工作在Slave 模式,且每个芯片在出厂时都内置了相同的Slave 地址18H 。也就是说,两个AIC31芯片不能连接在同一个I 2C 总线上,需用两套I 2C 总线分别对其配置。 4.1.3模拟音频输入

AIC31可配置为单端或差分输入方式,在单端方式下,输入模拟音频信号不能超过2Vp-p ,在差分方式下,输入模拟音频信号不能超过4Vp-p 。本文将输入方式配置为差分方式。AIC31内部还集成了麦克风前置放大器,前置放大器的增益范围为-12dB 到0dB 。模拟音频输入前端电路示意图如图4-2所示,MICBIAS 为麦克风提供偏置电压,输入信号通过0.1uf 的电容接入AIC31,起到滤波的作用。这里只画出一路,其它三路相同。

图4-2 模拟音频输入电路示意图 Fig4-2 The chart of analog audio input circuit

4.1.4自动增益控制(Automatic Gain Control,AGC)

为了使采集到的音频信号稳定在一定的幅度范围,AIC31的每个ADC 通道包含一个AGC 电路。当讲话人距麦克风变远或变近,输入的音频信号会变弱或变强,AGC 电路自动调整PGA 的增益,从而达到稳定音频信号的目的。 4.1.5 A/D转换

AIC31内部具有两个音频ADC ,采用128倍过采样机制,每个ADC 通道均具有一个独立的高通数字滤波器。每个ADC 前端还有一个PGA(programmable gain amplifier) ,PGA 的

增益控制范围为0-59.5Db 。本文中,采样率为44.1KHz 。

AIC31的ADC 是基于一个叫做Fsref(参考采样率) 的概念,典型的Fsref 为44.1KHz 或48KHz 。实际的ADC 采样率Fs 为Fsref/N或2×Fsref/N,其中N 的可取值为1,1.5,2,2.5,3,3.5,4,4.5,5,5.5和6。本文中取Fsref 为44.1KHz ,N 为1。

AIC31的采样精度可取16位,20位,24位或32位,本文取16位。 4.1.6串行音频数据接口

经过A/D转换后的数字音频信号通过一种音频总线协议传递给CPLD ,AIC31的音频总线可被配置为Left/Right justied ,I 2S ,DSP 或TDM 模式。这些总线模式都是先传高位,后传低位,均由WCLK(word clock)、BCLK(bit clock)和SDOUT 构成。WCLK 用来标志一桢采样数据的开始,其频率等于ADC 的采样频率,BCLK 为串行数据线SDOUT 提供位时钟,SDOUT 为串行数据线。WCLK 和BCLK 都能够被独立地配置为master(主模式) 或slave(从模式) ,对于AIC31来说,当配置为master 时,WCLK 和BCLK 为输出,当配置为slave 时为输入。

本文将AIC31串行音频数据总线接口的WCLK 和BCLK 配置为master ,由CPLD 提供WCLK 和BCLK 时钟信号。WCLK 的频率为44.1KHz ,因一次采样有左右两个声道,采样精度为16位,每次采样就需要传送32位数据,因此,BCLK 的频率为WCLK 的32倍。 4.1.7 AIC31与CPLD 的接口

AIC31与CPLD 接口示意图如4-3所示。

BCLK 、WCLK 和MCLK 分别为CPLD 向AIC31提供的位时钟、字时钟和主时钟信号。两个AIC31的SDOUT 信号分别与与CPLD 的SD0和SD1相连,SDOUT 为AIC31给CPLD 的串行音频数据信号。

图4-3 AIC31与CPLD 接口

Fig4-3 the interface of between AIC31 and CPLD

4.2音频数据缓冲设计 4.2.1 缓冲方案选择

为了避免过于频繁的中断微控制器,减小微控制器的压力,而又使音频信号的延迟达到最小,系统中加入一定大小的数据缓冲区。

缓冲区实现方案通常有三种:

1.FIFO (First In First Out,先进先出)方式。FIFO 是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。FIFO 一般用于不同时钟域之间的数据传输。对于本设计,因同时采集四路数据,若采用FIFO 缓冲方式,网络接口板需要先将FIFO 中的数据读到SRAM ,然后用软件方式将四路数据分开后再向网络发送,极大地浪费了CPU 资源。因此,本设计中不适合采用FIFO 缓冲方式。

2.高速SRAM 切换方式,即“乒乓” 缓冲方式。因单口SRAM 只有一套数据、地址和控制总线,需进行总线的切换。而切换控制电路比较复杂,将极大地增加印刷电路板面积和布线的难易度。

3.双口 RAM 方式。双口RAM 是常见的共享式多端口存储器,双口RAM 最大的特点是存储数据共享。一个存储器配备两套独立的地址、数据和控制线,允许两个独立的CPU 或控制器同时异步地访问存储单元。

综上所述,本设计中,音频数据缓冲方式采用双口RAM 缓冲方式。将双口RAM 分为大小相等的A 和B 两部分,在第一个数据缓冲周期,将采样到的数字音频数据写入缓冲区A ,在第二个数据缓冲周期,将采样的数字音频数据写入缓冲区B ,同时,微控制器读取并处理第一个缓冲周期内缓存到缓冲区A 中的数据,在第三个数据缓冲周期,将采样的数字音频数据写入缓冲区A ,同时,微控制器读取并处理第二个缓冲周期内缓存到缓冲区B 中的数据。如此循环。 4.2.2 缓冲区大小选择

数据缓冲区的大小必须合适系统才能具有优越的性能,若缓冲区过大,音频信号的延迟时间就比较长,若缓冲区过小,将增大CPU 的开销,也增加了向网络发送数据包的频繁程度。

综合考虑,将每路音频的缓冲区大小设为1KB 。由于ADC 的采样精度为16位,所以每路音频的每个采样点将产生两个字节的数据,1K 的缓冲区可以缓冲 1KB/2B=512次采样。而采样率为44.1kHz ,则数据缓冲周期为512/44.1kHz=11.6ms,由此使音频信号所产生的时延是允许的。

因此,每路音频数据缓冲区大小设为1KB ,四路即为4KB 。 4.2.3音频数据缓冲区电路设计

本设计中缓冲区大小为4KB ,因此双口RAM 的容量不得小于8KB ,以将双口RAM 分为两个4KB 的缓冲区A 和B 。但当前市场上容量小于16KB 的双口RAM 已不容易获得,因此,这里选用赛普拉斯公司(CYPRESS)的芯片CY7C006AV ,该芯片采用CMOS 工艺,单3.3V 供电,功耗低,容量为16KB ,数据宽度为8位。本设计中只用8KB 。CY7C006A V 的电路连接示意图如图4-4所示:

图4-4 音频缓冲区示意图 Fig4-4 The chart of audio buffer

4.3 CPLD

CPLD 是整个音频数据采集板的核心,它控制着音频数据采集板的各个部分,使各部分有序协调的工作。在CPLD 设计中,按照现代SOC 设计中自顶向下的方法,采用VHDL 语言描述,采用ModelSim 仿真,然后下载到器件中生成实际电路进行验证。

CPLD 所完成的功能将其划分为三个模块:UC 接口模块、ADC 接口模块和RAM 控制模块。详见软件系统设计部分。

5. 软件系统设计

CPLD 是整个音频数据采集板的核心,它控制着音频数据采集板的各个部分,使各部分有序协调的工作。在CPLD 设计中,按照现代SOC 设计中自顶向下的方法,采用VHDL 语言描述,采用ModelSim 仿真。

本文中,CPLD 采用Xilinx 公司生产的XC2C128 CPLD, XC2C128属CoolRunnerII 系列。 5.1软件开发所使用工具

本章首先根据CPLD 所完成的功能将其划分为三个模块:UC 接口模块、ADC 接口模块和RAM 控制模块。然后分别设计了这三个模块。最后,分别对三个模块及顶层模块进行综合和仿真. 所使用的工具有ModelSim 。 5.2 顶层设计

5.2.1 CPLD与其它各部分的关系

CPLD 与其它各部分的关系如图5-1所示:

l

图5-1 CPLD与其它部分的关系图

Fig5-1 the connection diagram between CPLD and others

当CPLD 检测到来自网络微处理器的有效启动信号ST 后,系统开始工作。

CPLD 为AIC31提供工作时钟,并实现AIC31的串行音频接口(Left Justified),接收来自两个AIC31的串行数字音频信号,将串行数字信号转换为并行的。然后将四路数据分别写入双口RAM 中各自的存储空间。当一个4K 的缓冲区被写满后,CPLD 向另一个4K 的缓冲区写数据,并产生对网络微处理器的中断信号IRQ ,通知网络微处理器从被写满的那个4K 的缓冲区中读取数据,如此反复。当网络微控制器从双口RAM 读数据时,CPLD 控制网络微控制器应该从哪个4K 的缓冲区中读数据。

CPLD 控制状态LED ,当开始采集音频数据时,LED 闪烁,停止采集时,LED 一直亮。 5.2.2 CPLD顶层模块划分

按照CPLD 所完成的功能,可将其分为三个模块,分别为UC 接口模块, ADC 接口模块和RAM 控制模块。如图5-2所示:

图5-2 CPLD顶层模块划分

Fig5-2 the partition of the top module

UC 接口模块实现CPLD 与微控制器的接口,检测来自微控制器的启动/停止信号,产生对微控制器的中断信号,并控制状态LED 。

ADC 接口模块为AIC31提供时钟信号,接收自AIC31的串行数字音频数据,然后转换为并行数据,并将数据传递给RAM 控制模块。

RAM 控制模块主要控制双口RAM ,产生写RAM 的时序,将ADC 接口模块接收到的各路数据分别写入双口RAM 中各自的缓冲区。 5.3 UC接口模块设计

UC 接口模块实现了与微控制器的接口,检测微控制器的启动/停止信号,根据RAM 控制模块的full 信号产生对微控制器的中断。并控制状态LED ,当系统处于音频采集状态时,LED 闪烁,否则,LED 常亮。 5.3.1 启动/停止信号的检测

当P1.4引脚为低电平时系统启动, 使sys_en有效,CPLD 开始为AIC31提供时钟信号,音频采集板处于数据采集状态;当P1.4引脚为高电平时,使sys_en无效,音频采集板停止采集数据,CPLD 停止给AIC31提供时钟信号。 5.3.2中断信号的产生

检测到有效的中断信号,中断信号的低电平持续时间最短为一个机器周期。

5.3.3 LED状态控制

图5-3 LED 状态控制电路

Fig5-3 the circuit of the state control of the LED

如图5-3所示,将一个计数器的最高位接led ,sys_en信号接计数器的异步清零端。当sys_en为0时,即系统停止采集数据时,计数器清零,led 为低电平,LED 直亮;否则,计数器处于计数状态,LED 闪烁。若用clk 作为LED 计数器的计数脉冲,需要的计数器位数比较多,这里采用full 信号作为LED 计数器的计数脉冲。 5.4 ADC接口模块设计

ADC 接口模块的主要功能为:为AIC31提供时钟信号,接收自AIC31的串行数字音频数据,然后转换为并行数据,并将数据传递给RAM 控制模块。

ADC 接口模块的端口信号描述如表5-1所示:

表5-1 ADC接口模块端口信号描述

Tab5-1 the description of the ADC interface module signal

5.4.1 CPLD与AIC31的串行数字音频接口

AIC31提供的串行数字音频接口有Left justified,Right justified,I2S ,DSP 和TDM 五种模式。本文中,CPLD 与AIC31之间的串行数字音频接口采用Left justified模式,时 WCLK 的频率即采样频率,为44.1KHz ,由CLK 的 512分频得到。 BCLK 的频率为WCLK 的32倍,由CLK 的16分频得到。

由图6-8可知,AIC31的串行输出数据SD 在BCLK 的下降沿变化,在BCLK 的上升沿处最稳定,因此,CPLD 在BCLK 的上升沿处对AIC31的串行输出数据SD 采样[7] 。 5.4.2 时钟产生器(clk_gen)

时钟产生器主要产生BCLK 、WCLK 等时钟信号。由于MCLK 与CLK 同频,BCLK 为CLK 的16分频,WCLK 为CLK 的512分频,所以时钟产生器可用9位计数器构成,如图5-4所示:

图5-4 时钟产生器电路图 Fig5-4 the circuit of clock generator

wclk 与计数器的clk_cnt(8)输出相连,bclk 与计数器的clk_cnt(3)输出相连。本设计中,ADC 转换精度为16位,为了节省CPLD 的资源,在接收ADC 串行数字音频数据时采用8位移位寄存器,每接收完一个字节,就将数据写到RAM 缓冲区中。为此,这里用tick 信号来指示是否wclk 脉冲高电平或者低电平的中点处。若是,tick 为1;否则,tick 为0[8] 。 5.5 RAM控制模块设计

RAM 控制模块的主要功能为:根据ADC 接口模块接收的各路数据控制写RAM

时序,将各路数据分别写入双口RAM 中各自的缓冲区,产生对网络微处理器的中断信号,并给总线切换模块提供切换信号。

RAM 控制模块的端口信号描述如表5-2所示:

表5-2 RAM控制模块端口信号描述

Tab6-4 the description of the RAM control module signal

5.5.1写RAM 时序

每次ds 有效,需将data0(AIC31_0的数据) 和data1(AIC31_1的数据) 依次写入RAM 。用一个计数器wccnt 的最高位来控制写选通信号we_w,通过改变计数器的位数即可改变向RAM 写一个数据所需的时间,从而可以满足不同速度RAM 的要求。本文用两位计数器,向RAM 写一个数据用4个clk 周期。 5.5.2 RAM控制主状态机

当检测到ds 信号的上升沿时,则需要向RAM 写数据,进入write0状态,将data0写入RAM ,然后再进入write1状态,将data1写入RAM ,最后回到idle 状态。 5.5.3地址产生器

在本设计中,将双口RAM 的低8K 存储区分为大小相等的两部分分别作为缓冲区A 和缓冲区B ,因同时采集四路音频数据,因此又将每部分分为四小部分分别存放各路数据,数据缓冲区的地址分配如图5-5所示[10]:

图5-5 数据缓冲区地址分配 Fig5-5 the address assignment of data buffer

5.6 波形仿真和结果分析

通过对CPLD 所完成的功能分析,结构设计,用XST 综合工具综合后,用ModelSim SE5.8a 先对各个子模块仿真,仿真无误后再对顶层设计进行仿真。 5.6.1 ADC接口模块仿真

将ADC 接口模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-7所示:

图5-7ADC 接口模块仿真波形图

Fig5-7 the simulation wave of ADC interface module

由ADC 接口模块的仿真波形图可知,仿真波形完全与期望波形吻合,即ADC 模块达到了所设计的功能要求。 5.6.2 RAM控制模块仿真

将RAM 控制模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-8所示:

图5-8 RAM控制模块仿真波形图

Fig5-8the simulation wave of RAM control module

由RAM 控制模块的仿真波形图可知,仿真波形完全与期望波形吻合,即RAM 控制模块达到了所设计的功能要求。 5.6.3 UC接口模块仿真

将UC 接口模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-9所示。

图5-9 UC接口模块仿真波形图

Fig5-9 the simulation wave of UC interface module

由UC 接口模块的仿真波形图可知,仿真波形完全与期望波形吻合,即UC 接口模块达到了所设计的功能要求。

因此,UC 接口模块的仿真也完全正确。 5.6.4 顶层设计仿真

三个模块分别仿真无误后,将顶层设计经XST 综合后,用ModelSim SE5.8a 仿真后的波形图如图5-10所示:

图5-10 顶层设计仿真波形图

Fig5-10 the simulation wave of the top level design

由顶层设计的仿真波形图可知,仿真波形完全与期望波形吻合,即CPLD 设计达到了预期的功能要求。CPLD 给AIC31提供时钟信号,并同时接收两个AIC31的四路串行音频信号,将串行数据通过移位寄存器转换为并行数据后,分别将四路数据分别写入各自的缓冲区。CPLD 并能正确地检测微控制器的启动/停止信号,并在每个缓冲周期末通知微控制器读取数据[11] 。

6. 总结和展望

本文预设计一种多路音频采集器,系统采用CPLD 技术,实现了四路模拟音源的同时实时采集,将模拟音频信号以44.1kHz 的采样率、16位的采样精度转换为数字音频信号后,交由网络接口板传输到播放终端。传输过程的数字化使音频信号具有更好的可控性、保密性和抗干扰能力。系统还具有AGC(自动增益控制) 功能,能够根据输入音源信号幅度大小的不同自动将其稳定在一定的水平,避免了由于音源信号强弱的变化而造成播放终端声音的忽大忽小,同时保护了终端播放设备。

本论文所完成的工作如下:

收集、查阅了大量文献资料,分析、比较了当前的音频采集器,提出了一种以CPLD 技术多路音频采集器的设计方案。深入透彻地研究了数字音频技术。音频采集器硬件系统的设计。

本系统充分利用CPLD 在电子系统设计中的优越性,不仅使系统灵活,更具可扩展性,易于更新和维护,而且使系统小巧,稳定,功耗低,实时性强。

在本系统的设计过程中,也遇到了很多问题,但在导师的帮助下都一一解决。通过本设计,学到了很多东西。最为重要的是,学会了当遇到问题时根据现象去分析问题、并解决问题的方法。

虽然本系统的设计经验证已经达到了预期的功能要求,但是仍有待进一步研究。当前,大多数音频流服务器是通过PC 获取数据,或者是用其它方法将采集到的数据传给PC ,然后通过PC 将数据传送到网上,系统成本过高,随着人们需求的变化,现在市场上的相关产品已经多为音视频联合采集。

参考文献

[1] 刘毓敏. 数字音频技术应用. 北京:机械工业出版社[M],2003,3-4

[2] 黄勇峰. 因特网语音通信技术及其应用[M]. 北京:人民邮电出版社,2002, 1,51-60 [3] 尹晓勇. 计算机网络基础[M]. 北京:电子工业出版社,2002, 1,62-65

[4] Ken C. Pohlmann著,苏菲译. 数字音频原理与应用[M],第四版. 北京:电子工业出版社,2002,15-16 [5] 卢官明,宗昉. 数字音频原理及应用[M]. 北京:机械工业出版社,2002,6,14-21 [6] 林敏. VHDL 系统设计与高层次综合[J].北京:电子工业出版社,2002

[7] 侯伯亨,顾新. VHDL 硬件描述语言与数字逻辑电路设计[M]. 西安:西安电子科技大学出版社. 1997 [8] 朱明程,董尔令等. 可编程逻辑器件原理及应用[M]. 西安:西安电子科技大学出版社,2004 [9] Douglas L.Perry. VHDL Programming by Example[J], Fourth Edition. McGraw-Hill, 2002,25-208 [10] Michael Keating, and Pierre Bricaud. Reuse Methodology Manual,[M] Third Edition. Kluwer Academic

Publishers, 2002,90-96.

[11] 王诚,薛小刚,钟信潮.FPGA/CPLD设计工具-XILINX ISE 使用详解[J].北京:人民邮电出版

社.2005

致谢

本论文是在导师... 的悉心指导下完成的。导师严谨治学的科研态度,深厚的学术造诣,勇于探索的进取精神,谦虚认真的学者风度都给我留下了极其深刻的印象,导师的教诲将使我终生受益。在此,谨向敬爱的导师表示最诚挚的谢意。

在攻读学士的四年中,得到... 等老师的指导和帮助,在此向他们表示感谢。

感谢...... 等实验室的同学,还有所有帮助我、支持我的朋友!他们让我感受了友情,促使了我的成长。

感谢我远方的父母和家人,他们培养我、理解我、支持我,尽他们最大努力为我营造了好的学习、生活条件。

本文中参考的文献来自众多书籍、期刊和论文,在此对这些文章的作者表示感谢。 最后,感谢在百忙之中评阅本论文的各位老师!

王宇航 2008.6.

Multi-channel audio Collector

Student majoring in electronic information engineering wangyuhang Tutor yangaizhen

Abstract: With the change of the people’s requirement, many applications need to sample the multi channel audio signal simultaneously. Based on referring to abundant information, a system is designed. The system introduced the technology of CPLD of four channel analog audio signal simultaneously. In the end, tested the system meets the prospective function.

Keyword: digital audio: Applied present condition; Develop trend; CPLD; Dual-port RAM

目录

摘要 . ................................................................................................................................................... 1

关键字 . ............................................................................................................................................... 1

1 绪论 . ............................................................................................................................................... 1

1.1课题研究的目的和意义 . ...................................................................................................... 1

1.2课题研究的内容 . .................................................................................................................. 1

1.3国内外研究现状 . .................................................................................................................. 1

2. 数字音频概述 . .............................................................................................................................. 3

2.1 数字音频的概念 . ................................................................................................................. 3

2. 2模拟音频数字化的过程 . ..................................................................................................... 3

2.2.2 量化 . ........................................................................................................................... 4

2.2.3 编码 . ........................................................................................................................... 4

2.3主要技术指标 . ...................................................................................................................... 4

2.3.1 采样精度 . ................................................................................................................... 4

2.3.2 比特率 . ....................................................................................................................... 5

3. 整体方案设计 . .............................................................................................................................. 6

3.1 系统欲实现的功能: . ......................................................................................................... 6

3.2 系统采用的关键技术 . ......................................................................................................... 6

3.2.1自动增益控制(AGC ) ............................................................................................ 7

3.2.2 采样 . ........................................................................................................................... 7

3.2.3 缓冲 . ........................................................................................................................... 7

4. 硬件系统设计 . .............................................................................................................................. 8

音频采集板整体结构设计 . ................................................................................................. 8

4.1 AIC31电路设计 ................................................................................................................... 8

4.1.1 AIC31简介 ................................................................................................................. 8

4.1.2 AIC31配置方案选择 ................................................................................................. 9

4.1.3模拟音频输入 . ............................................................................................................ 9

4.1.4自动增益控制(Automatic Gain Control,AGC) . ...................................................... 9

4.1.5 A/D转换 ..................................................................................................................... 9

4.1.6串行音频数据接口 . .................................................................................................. 10

4.1.7 AIC31与CPLD 的接口 . .......................................................................................... 10

4.2音频数据缓冲设计 . ............................................................................................................ 10

4.2.1 缓冲方案选择 . ......................................................................................................... 10

4.2.2 缓冲区大小选择 . ..................................................................................................... 11

4.2.3音频数据缓冲区电路设计 . ...................................................................................... 11

4.3 CPLD................................................................................................................................... 12

5. 软件系统设计 . .......................................................................................................................... 13

5.1软件开发所使用工具 . ........................................................................................................ 13

5.2 顶层设计 . ........................................................................................................................... 13

5.2.1 CPLD与其它各部分的关系.................................................................................... 13

5.2.2 CPLD顶层模块划分................................................................................................ 13

5.3 UC接口模块设计 .............................................................................................................. 14

5.3.1 启动/停止信号的检测............................................................................................. 14

5.3.2中断信号的产生 . ...................................................................................................... 14

5.3.3 LED状态控制 .......................................................................................................... 15

5.4 ADC接口模块设计............................................................................................................ 15

5.4.1 CPLD与AIC31的串行数字音频接口................................................................... 16

5.4.2 时钟产生器(clk_gen)...................................................................................................... 16

5.5 RAM控制模块设计........................................................................................................... 16

5.5.1写RAM 时序............................................................................................................ 17

5.5.2 RAM控制主状态机................................................................................................. 17

5.5.3地址产生器 . .............................................................................................................. 17

5.6 波形仿真和结果分析 . ....................................................................................................... 18

5.6.1 ADC接口模块仿真.................................................................................................. 18

5.6.2 RAM控制模块仿真................................................................................................. 18

5.6.3 UC接口模块仿真 .................................................................................................... 19

5.6.4 顶层设计仿真 . ......................................................................................................... 19

6. 总结和展望 . ................................................................................................................................ 21

参考文献 . ......................................................................................................................................... 22

致谢 . ................................................................................................................................................. 23

多路音频采集器

摘要:随着人们需求的变化,越来越多的应用场合需要多路音频的同时采集。在查阅大量资料

的基础上,本文设计出一种多路音频采集器,系统采用CPLD 技术,实现了四路模拟音源的同时

实时采集。最后,经仿真测试达到了预期要求。

关键字:数据音频;应用现状;发展趋势 ;CPLD ;双口RAM

1 绪论

1.1课题研究的目的和意义

最初,人们通过模拟信号来实现音频的处理和传递,音频信号的传输一般是一路信号占用一对线,如需要传输多路音频信号,就必须采用多芯电缆或多根电线,系统布线十分复杂,成本较高,更无法实现多路音频信号灵活的路由和对音频信号的远程控制。与数字信号相比,模拟信号有着许多无法克服的缺点,如控制性较差,易受干扰,保密性不好等。随着电子技术的发展,人类进入了数字化时代,音频信号的数字化是大势所趋。数字音频技术在社会生活中的应用越来越广泛,因此,对数字音频领域的研究有着非常广阔的前景。

互联网技术的广泛应用为音频信号的传输提供了极大的便利。网络已经渗透到了社会生活的各个方面,利用现有的网络资源,通过网络进行数字音频信号的传输和交换代表了未来音频技术的发展方向[1]。

1.2课题研究的内容

本课题通过对模拟音频信号与数字音频信号的比较,对数字音频技术的相关理论进行探讨,预设计出一款能够对多路音频进行同时采集的系统。

1.3国内外研究现状

随着音频市场的不断迅速发展,不仅涌现出各种标准与新的音频功能。而且业界也在持续地改进产品的音质,现在已经进入新的数字音频时代。

数字音频压缩技术在各种音乐供应和传送的体系中,扮演着一个重要的角色,其影响范围涵盖包括如CD 、SACD 、DVD 、DVD-Audio 、MP3-CD 等媒体,或是包括如网络或有线电视、卫星等能提高储存、频宽效率的网络媒体。

采集器是80年代中期出现的先进技术, 是一种具有现场记录和离线分析机器设备状态数据功能的便携式分析仪器。它把安装在机器设备上的振动传感器和过程传感器所测得物理量作为输入, 配合各种测量分析技术以及多样化的显示格式组成一个监测系统, 应用于对机器设备进行定期巡回状态监测和故障诊断。它能和计算机结合在一起成为独立的监测分析系统,

是现代机器设备的计算机辅助诊断手段之一。这类技术在我国推广应用后, 已取得了良好的效果。据不完全统计, 全国目前生产数据采集器的厂已有14家之多,且具有相当的技术水平,应用进口或国产数据采集器进行设备状态监测和诊断的企业已有数百家、短短几年, 我国的数据采集器技术已从无到有发展到一定水平。我国音频采集器的产品具有现具有可输入各类视频、音频信号;可同时采集模拟音频、视频(双制式)配合视频捕捉软件可制作音视频文件、VCD 光盘的特点。

当前,大多数音频流服务器是通过PC 获取数据,或者是用其它方法将采集到的数据传给PC ,然后通过PC 将数据传送到网上,系统成本过高, 且大多只能实现单路音频的采集。随着人们需求的变化,越来越多的应用场合需要多路音频的同时采集。所以本论文所设计的音频采集器具有很广泛的应用前景[2]。

2. 数字音频概述

2.1 数字音频的概念

人类能够听到的所有声音都称之为音频,它可能包括噪音、说话声、歌声、乐器声等。我们可以听见的声音经过音频线或话筒的传输都是一系列的模拟信号。模拟信号是我们可以听见的。而数字信号就是用一堆数字记号来记录声音,而不是用物理手段来保存信号。(用普通磁带录音就是一种物理方式)数字信号我们实际上是听不到的。

模拟声音在时间上是连续的,而数字音频是一个数据序列,在时间上是断续的。数字音频是通过采样和量化,把模拟量表示的音频信号转换成由许多二进制数1和0组成的数字音频信号。

计算机内的基本数制是二进制,为此我们也要把声音数据写成计算机的数据格式,这称之为编码音频数字化,计算机内的音频必须是数字形式的,因此必须把模拟音频信号转换成有限个数字表示的离散序列,即实现音频数字化。在这一处理技术中,涉及到音频的抽样、量化和编码[3]。

2. 2模拟音频数字化的过程

信号的数字化就是将连续变化的模拟信号转换成离散的数字信号,一般需要完成采样、量化和编码三个步骤,如图2-1所示。采样是指用每隔一定时间间隔的信号样本值序列代替原来在时间上连续的信号,也就是在时间上将模拟信号离散化。量化是用有限个幅度值近似原来连续变化的幅度值,把模拟信号的连续幅度变为有限数量、有一定间隔的离散值。编码则是按照一定的规律,把量化后的离散值用二进制数码表示。上述数字化的过程又称为脉冲编码调制(Pulse Code Modulation,PCM) ,通常由模拟/数字(A/D)转换器来实现[4]。

模拟音频信号数字码流

图2-1 音频信号的数字化

Fig2-1 the digitization of audio signal

数字音频信号经过处理、记录或传输后,当需要重现声音时,还必须还原为连续变化的模拟信号。将数字信号转换成模拟信号的转换称为数字/模拟 (D/A)转换。

2.2.1 采样

模拟信号不仅在幅度取值上是连续(连续的含义是指在某一取值范围内可以取无穷多个数值) 的,而且在时间上也是连续的,即每个时刻都存在一个信号幅度值与之对应。要使模拟信号数字化,首先要在时间上进行离散化处理,即在时间上用有限个采样点来代替连续无限的坐标位置。

采样是每隔一定的时间间隔,抽取信号的一个瞬时幅度值(样本值) 。采样的时间间隔称为采样周期;每秒内采样的次数称为采样频率。采样后所得出的一系列在时间上离散的样本

值称为样值序列。根据奈奎斯特(Nyquist)采样定理,一个带宽限制的模拟信号可以用一个样值序列信号来表示而不会丢失任何信息,只要采样频率f s 大于或等于被采样信号的最高频率f m 的2倍,就可以通过理想低通滤波器,从样值序列信号中无失真地恢复出原始模拟信号。也就是说,在满足奈奎斯特采样定理的条件下,在时间上离散的信号包含有离散前模拟信号的全部信息。

2.2.2 量化

采样把模拟信号变成了时间上离散的样值序列,但每个样值的幅度仍然是一个连续的模拟量,因此还必须对其进行离散化处理,将其转换为有限个离散值,才能最终用数码来表示其幅值。这种对采样值进行离散化的过程称为量化。从数学的角度看,量化就是把一个取连续值的无限集合{x},通过变换Q ,映射到一个只有L 个离散值的集合{yk },k =1,2,„,L 。

如图2-2所示,当输入电平x 落入[xk ,x k+1) 时,量化器输出为y k ,即

y = Q(x) = yk 当x ∈[xk ,x k+1) ,k =1,2,„,L (2-1)

式(2-1)中,x k 称为量化判决电平或分层电平,y k 称为第k 个量化电平,L 称为量化级数或量化层次数。Δk =x k+1-x k ,称为第k 个量化台阶(或称量化步长) 。

量化判决电平量化输出电平

x k+1

x k y k

图2-2 量化示意图

Fig2-2 The chart of quantifing

2.2.3 编码

采样、量化后的信号还不是数字信号,需要把它转换成数字编码脉冲,这一过程称为编码。最简单的编码方式是二进制编码。具体说来,就是用n 比特二进制码来表示已经量化了的样值,每个二进制数对应一个量化电平,然后把它们排列,得到由二值脉冲串组成的数字信息流。用这样方式组成的二值脉冲串的频率等于采样频率与量化比特数的积,称为所传输数字信号的数码率。显然,采样频率越高,量化比特数越大,数码率就越高,所需要的传输带宽就越宽。

2.3主要技术指标

2.3.1 采样精度

因为Wave 是数码信号,它是用一堆数字来描述原来的模拟信号,所以它要对原来的模拟信号进行分析,所有的声音都有其波形,数码信号就是在原有的模拟信号波形上每隔一段时间进行一次“取点”,赋予每一个点以一个数值,这就是“采样”,然后把所有的“点”连起来就可以描述模拟信号,在一定时间内取的点越多,描述出来的波形就越精确,这个尺度就称

为“采样精度”。最常用的采样精度是44.1kHz/s。意思是每秒取样44100次,之所以使用这个数值是因为经过了反复实验,人们发现这个采样精度最合适,低于这个值就会有较明显的损失,而高于这个值人的耳朵已经很难分辨,而且增大了数字音频所占用的空间。一般为了达到“万分精确”,我们还会使用48k 甚至96k 的采样精度,实际上,96k 采样精度和44.1k 采样精度的区别绝对不会象44.1k 和22k 那样区别如此之大,CD 的采样标准就是44.1k ,目前44.1k 还是一个最通行的标准,但有些人认为96k 将是未来录音界的趋势。

2.3.2 比特率

作为数码录音,必须也要能精确表示乐曲的轻响,比特”就是这样一个对波形的振幅有精确的描述的单位,16比特就是指把波形的振幅划为216即65536个等级,根据模拟信号的轻响把它划分到某个等级中去,就可以用数字来表示了。和采样精度一样,比特率越高,越能细致地反映乐曲的轻响变化。刚才提到了一个名词“动态”,它其实指的是一首乐曲最响和最轻的对比能达到多少,还有一个专业名词“动态范围”,单位是dB ,而动态范围和录音时采用的比特率是紧密结合在一起的,如果使用了一个很低的比特率,那么就只有很少的等级可以用来描述音响的强弱,就不能听到大幅度的强弱对比了。动态范围和比特率的关系是;比特率每增加1比特,动态范围就增加6dB 。所以假如使用1比特录音,那么动态范围就只有6dB ,这样的音乐是不可能听的。16比特时,动态范围是96dB 。这可以满足一般的需求。20比特时,动态范围是120dB ,对比再强烈的交响乐都可以应付自如,表现音乐的强弱是绰绰有余了。发烧级的录音师还使用24比特,但是和采样精度一样,它不会比20比特有很明显的变化,理论上24比特可以做到144 dB的动态范围,但实际上是很难达到的,因为任何设备都不可避免会产生噪音,至少在现阶段24比特很难达到其预期效果[4] 。

3. 整体方案设计

在信息化日益加速发展的今天, 诸如远程教学、电话会议、网络广播等系统的应用迅速兴起, 在这些应用中, 高速音频数据采集技术成为其关键的环节。

近年来,随着可编程逻辑器件集成度的提高和成本的降低,在电子系统设计中应用越来越广泛,不仅能够使系统灵活,开发周期短,易于更新和维护,具有可扩展性,而且使系统小巧,稳定,功耗低,实时性强。况且,CPLD(复杂可编程逻辑器件) 基于Flash 结构,无需另配存储器,使用方便。因此,本系统中音频采集板的设计将以CPLD 为核心 代替这些分立元件, 克服了传统实现方法的不足, 充分利用了CPLD 的优越性, 使系统灵活, 开发周期短, 更具可扩展性 。并采用合适的缓冲机制, 既避免了过于频繁的中断微处理器, 减小了微处理器的压力, 又使音频信号的延迟达到最小. 如图3-1所示,

图3-1 系统整体结构图 Fig3-1 The structure chart of the whole system

音频采集板主要将各路模拟音频信号放大后转换成数字信号,然后存入数据缓冲区,以供上层系统读取。

3.1 系统欲实现的功能:

● 四路模拟音源的同时实时采集。模拟音源可以是麦克风输出或其它音频设备的模拟

音频输出。

● 模拟信号的数字化。

● 最高采样率:44.1kHz 。

● 采样精度:16位。

● AGC(自动增益控制) 功能。

3.2 系统采用的关键技术

本文预设计出一种多路音频采集器,将系统整体分为采样、转换及控制、数据缓冲3个部分。采样部分先将输入模拟音频信号放大,然后将模拟信号转换为数字信号。转换及控制

部分主要负责整个系统的控制,并将采样的数据转换为一定格式写入数据缓冲区。缓冲部分主要完成数据缓冲的功能。最后,实现了四路模拟音源的同时实时采集。

3.2.1自动增益控制(AGC )

AGC 功能能够根据输入音源信号幅度的大小,自动调节放大器的增益,当输入音源信号幅度过大时降低放大器增益,当输入音源信号幅度过小时提高放大器增益,从而在进行A/D转换之前使音频信号的幅度处于一个稳定的水平。若没有AGC 功能,当人口距麦克风过近或说话声音过大时,将可能由于放大器的削波现象而产生信号的失真,严重时将损坏终端播放设备;当人口距麦克风过远或说话声音过小时,在终端可能不能清楚地听见语音信号。因此,系统中具有AGC 功能是十分必要的。

3.2.2 采样

采样后所得出的一系列在时间上离散的样本值称为样值序列。根据奈奎斯特(Nyquist)采样定理,一个带宽限制的模拟信号可以用一个样值序列信号来表示而不会丢失任何信息,只要采样频率f s 大于或等于被采样信号的最高频率f m 的2倍,就可以通过理想低通滤波器,从样值序列信号中无失真地恢复出原始模拟信号。也就是说,在满足奈奎斯特采样定理的条件下,在时间上离散的信号包含有离散前模拟信号的全部信息[5] 。

3.2.3 缓冲

为了避免过于频繁的中断微控制器,减小微控制器的压力,而又使音频信号的延迟达到最小,系统中加入一定大小的数据缓冲区。

对于数据流的缓冲可以采用多种机制,可以用两片单口SRAM 实现的“乒乓”缓冲机制,也可用一片双口RAM 实现。用两片单口SRAM 实现时,需要额外的总线切换电路,所用器件较多,专用电路板的面积较大。因此,在这里选用一片双口RAM 作为数据缓冲区。

4. 硬件系统设计

音频采集板以CPLD 为核心,主要完成数据采集的功能,将各路模拟音频信号放大后转换成数字信号,然后存入数据缓冲区。

音频采集板整体结构设计

图4-1 音频采集板结构框图

Fig4-1 The structure diagram of audio sample board

如图4-1所示,音频采集板先将输入的四路模拟音源进行前置放大,经AGC 电路(自动增益控制) 将模拟音频信号的幅度稳定在一定的范围,再通过ADC 将模拟信号转换为数字信号。前置放大、AGC 、ADC 三者的功能由TI 公司的单个芯片Tlv320aic31(下文用AIC31表示) 完成。系统中使用低通滤波器去掉信号中不必要的高频成分,降低采样频率,避免频率混淆,去掉高频干扰。缓冲区由一片双口SRAM 构成。

CPLD 为AIC31提供工作时钟,并接收来自AIC31的串行数字音频信号,将串行数字信号转换为并行的,然后将四路数据分别写入各自的缓冲区,并通知网络微处理器从数据缓冲区中读取数据。CPLD 是整个音频采集板的核心,它控制着音频数据采集的各个部分,使各部分有序协调的工作。

4.1 AIC31电路设计

4.1.1 AIC31简介

AIC31是TI(Texas Instruments,德州仪器) 公司生产的一款集成了麦克风前置放大器、自动增益控制(AGC)、ADC 为一体的芯片。功耗低,可配置为单端输入或差分输入方式,基于寄存器的电源控制方式,可编程控制的麦克风偏置电压。立体声的音频ADC 支持8KHz 到96KHz 的采样率,内部可编程放大器的增益可达+59.5dB。AIC31内部还具有两个音频DAC ,

本系统不用。

串行控制总线支持I 2C 协议,通过I 2C 协议配置其内部寄存器,从而实现对AIC31的初始化及控制。

串行音频数据总线支持I 2S ,left/right justied,DSP 和TDM 模式。 AIC31内部具有PLL ,MCLK 范围广,从512KHz 到50MHz 。

每片AIC31内部具有两个ADC ,可采集两路音频数据,因此,要完成四路音频的同时采集,共需2片AIC31[6] 。 4.1.2 AIC31配置方案选择

本设计中同时采集四路音频数据,需用两片AIC31,虽然I 2C 总线上可以同时连接多个器件,但前提是每个Slave 器件的响应地址是唯一的,而AIC31的用于配置内部寄存器的I 2C 接口只能工作在Slave 模式,且每个芯片在出厂时都内置了相同的Slave 地址18H 。也就是说,两个AIC31芯片不能连接在同一个I 2C 总线上,需用两套I 2C 总线分别对其配置。 4.1.3模拟音频输入

AIC31可配置为单端或差分输入方式,在单端方式下,输入模拟音频信号不能超过2Vp-p ,在差分方式下,输入模拟音频信号不能超过4Vp-p 。本文将输入方式配置为差分方式。AIC31内部还集成了麦克风前置放大器,前置放大器的增益范围为-12dB 到0dB 。模拟音频输入前端电路示意图如图4-2所示,MICBIAS 为麦克风提供偏置电压,输入信号通过0.1uf 的电容接入AIC31,起到滤波的作用。这里只画出一路,其它三路相同。

图4-2 模拟音频输入电路示意图 Fig4-2 The chart of analog audio input circuit

4.1.4自动增益控制(Automatic Gain Control,AGC)

为了使采集到的音频信号稳定在一定的幅度范围,AIC31的每个ADC 通道包含一个AGC 电路。当讲话人距麦克风变远或变近,输入的音频信号会变弱或变强,AGC 电路自动调整PGA 的增益,从而达到稳定音频信号的目的。 4.1.5 A/D转换

AIC31内部具有两个音频ADC ,采用128倍过采样机制,每个ADC 通道均具有一个独立的高通数字滤波器。每个ADC 前端还有一个PGA(programmable gain amplifier) ,PGA 的

增益控制范围为0-59.5Db 。本文中,采样率为44.1KHz 。

AIC31的ADC 是基于一个叫做Fsref(参考采样率) 的概念,典型的Fsref 为44.1KHz 或48KHz 。实际的ADC 采样率Fs 为Fsref/N或2×Fsref/N,其中N 的可取值为1,1.5,2,2.5,3,3.5,4,4.5,5,5.5和6。本文中取Fsref 为44.1KHz ,N 为1。

AIC31的采样精度可取16位,20位,24位或32位,本文取16位。 4.1.6串行音频数据接口

经过A/D转换后的数字音频信号通过一种音频总线协议传递给CPLD ,AIC31的音频总线可被配置为Left/Right justied ,I 2S ,DSP 或TDM 模式。这些总线模式都是先传高位,后传低位,均由WCLK(word clock)、BCLK(bit clock)和SDOUT 构成。WCLK 用来标志一桢采样数据的开始,其频率等于ADC 的采样频率,BCLK 为串行数据线SDOUT 提供位时钟,SDOUT 为串行数据线。WCLK 和BCLK 都能够被独立地配置为master(主模式) 或slave(从模式) ,对于AIC31来说,当配置为master 时,WCLK 和BCLK 为输出,当配置为slave 时为输入。

本文将AIC31串行音频数据总线接口的WCLK 和BCLK 配置为master ,由CPLD 提供WCLK 和BCLK 时钟信号。WCLK 的频率为44.1KHz ,因一次采样有左右两个声道,采样精度为16位,每次采样就需要传送32位数据,因此,BCLK 的频率为WCLK 的32倍。 4.1.7 AIC31与CPLD 的接口

AIC31与CPLD 接口示意图如4-3所示。

BCLK 、WCLK 和MCLK 分别为CPLD 向AIC31提供的位时钟、字时钟和主时钟信号。两个AIC31的SDOUT 信号分别与与CPLD 的SD0和SD1相连,SDOUT 为AIC31给CPLD 的串行音频数据信号。

图4-3 AIC31与CPLD 接口

Fig4-3 the interface of between AIC31 and CPLD

4.2音频数据缓冲设计 4.2.1 缓冲方案选择

为了避免过于频繁的中断微控制器,减小微控制器的压力,而又使音频信号的延迟达到最小,系统中加入一定大小的数据缓冲区。

缓冲区实现方案通常有三种:

1.FIFO (First In First Out,先进先出)方式。FIFO 是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加1完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。FIFO 一般用于不同时钟域之间的数据传输。对于本设计,因同时采集四路数据,若采用FIFO 缓冲方式,网络接口板需要先将FIFO 中的数据读到SRAM ,然后用软件方式将四路数据分开后再向网络发送,极大地浪费了CPU 资源。因此,本设计中不适合采用FIFO 缓冲方式。

2.高速SRAM 切换方式,即“乒乓” 缓冲方式。因单口SRAM 只有一套数据、地址和控制总线,需进行总线的切换。而切换控制电路比较复杂,将极大地增加印刷电路板面积和布线的难易度。

3.双口 RAM 方式。双口RAM 是常见的共享式多端口存储器,双口RAM 最大的特点是存储数据共享。一个存储器配备两套独立的地址、数据和控制线,允许两个独立的CPU 或控制器同时异步地访问存储单元。

综上所述,本设计中,音频数据缓冲方式采用双口RAM 缓冲方式。将双口RAM 分为大小相等的A 和B 两部分,在第一个数据缓冲周期,将采样到的数字音频数据写入缓冲区A ,在第二个数据缓冲周期,将采样的数字音频数据写入缓冲区B ,同时,微控制器读取并处理第一个缓冲周期内缓存到缓冲区A 中的数据,在第三个数据缓冲周期,将采样的数字音频数据写入缓冲区A ,同时,微控制器读取并处理第二个缓冲周期内缓存到缓冲区B 中的数据。如此循环。 4.2.2 缓冲区大小选择

数据缓冲区的大小必须合适系统才能具有优越的性能,若缓冲区过大,音频信号的延迟时间就比较长,若缓冲区过小,将增大CPU 的开销,也增加了向网络发送数据包的频繁程度。

综合考虑,将每路音频的缓冲区大小设为1KB 。由于ADC 的采样精度为16位,所以每路音频的每个采样点将产生两个字节的数据,1K 的缓冲区可以缓冲 1KB/2B=512次采样。而采样率为44.1kHz ,则数据缓冲周期为512/44.1kHz=11.6ms,由此使音频信号所产生的时延是允许的。

因此,每路音频数据缓冲区大小设为1KB ,四路即为4KB 。 4.2.3音频数据缓冲区电路设计

本设计中缓冲区大小为4KB ,因此双口RAM 的容量不得小于8KB ,以将双口RAM 分为两个4KB 的缓冲区A 和B 。但当前市场上容量小于16KB 的双口RAM 已不容易获得,因此,这里选用赛普拉斯公司(CYPRESS)的芯片CY7C006AV ,该芯片采用CMOS 工艺,单3.3V 供电,功耗低,容量为16KB ,数据宽度为8位。本设计中只用8KB 。CY7C006A V 的电路连接示意图如图4-4所示:

图4-4 音频缓冲区示意图 Fig4-4 The chart of audio buffer

4.3 CPLD

CPLD 是整个音频数据采集板的核心,它控制着音频数据采集板的各个部分,使各部分有序协调的工作。在CPLD 设计中,按照现代SOC 设计中自顶向下的方法,采用VHDL 语言描述,采用ModelSim 仿真,然后下载到器件中生成实际电路进行验证。

CPLD 所完成的功能将其划分为三个模块:UC 接口模块、ADC 接口模块和RAM 控制模块。详见软件系统设计部分。

5. 软件系统设计

CPLD 是整个音频数据采集板的核心,它控制着音频数据采集板的各个部分,使各部分有序协调的工作。在CPLD 设计中,按照现代SOC 设计中自顶向下的方法,采用VHDL 语言描述,采用ModelSim 仿真。

本文中,CPLD 采用Xilinx 公司生产的XC2C128 CPLD, XC2C128属CoolRunnerII 系列。 5.1软件开发所使用工具

本章首先根据CPLD 所完成的功能将其划分为三个模块:UC 接口模块、ADC 接口模块和RAM 控制模块。然后分别设计了这三个模块。最后,分别对三个模块及顶层模块进行综合和仿真. 所使用的工具有ModelSim 。 5.2 顶层设计

5.2.1 CPLD与其它各部分的关系

CPLD 与其它各部分的关系如图5-1所示:

l

图5-1 CPLD与其它部分的关系图

Fig5-1 the connection diagram between CPLD and others

当CPLD 检测到来自网络微处理器的有效启动信号ST 后,系统开始工作。

CPLD 为AIC31提供工作时钟,并实现AIC31的串行音频接口(Left Justified),接收来自两个AIC31的串行数字音频信号,将串行数字信号转换为并行的。然后将四路数据分别写入双口RAM 中各自的存储空间。当一个4K 的缓冲区被写满后,CPLD 向另一个4K 的缓冲区写数据,并产生对网络微处理器的中断信号IRQ ,通知网络微处理器从被写满的那个4K 的缓冲区中读取数据,如此反复。当网络微控制器从双口RAM 读数据时,CPLD 控制网络微控制器应该从哪个4K 的缓冲区中读数据。

CPLD 控制状态LED ,当开始采集音频数据时,LED 闪烁,停止采集时,LED 一直亮。 5.2.2 CPLD顶层模块划分

按照CPLD 所完成的功能,可将其分为三个模块,分别为UC 接口模块, ADC 接口模块和RAM 控制模块。如图5-2所示:

图5-2 CPLD顶层模块划分

Fig5-2 the partition of the top module

UC 接口模块实现CPLD 与微控制器的接口,检测来自微控制器的启动/停止信号,产生对微控制器的中断信号,并控制状态LED 。

ADC 接口模块为AIC31提供时钟信号,接收自AIC31的串行数字音频数据,然后转换为并行数据,并将数据传递给RAM 控制模块。

RAM 控制模块主要控制双口RAM ,产生写RAM 的时序,将ADC 接口模块接收到的各路数据分别写入双口RAM 中各自的缓冲区。 5.3 UC接口模块设计

UC 接口模块实现了与微控制器的接口,检测微控制器的启动/停止信号,根据RAM 控制模块的full 信号产生对微控制器的中断。并控制状态LED ,当系统处于音频采集状态时,LED 闪烁,否则,LED 常亮。 5.3.1 启动/停止信号的检测

当P1.4引脚为低电平时系统启动, 使sys_en有效,CPLD 开始为AIC31提供时钟信号,音频采集板处于数据采集状态;当P1.4引脚为高电平时,使sys_en无效,音频采集板停止采集数据,CPLD 停止给AIC31提供时钟信号。 5.3.2中断信号的产生

检测到有效的中断信号,中断信号的低电平持续时间最短为一个机器周期。

5.3.3 LED状态控制

图5-3 LED 状态控制电路

Fig5-3 the circuit of the state control of the LED

如图5-3所示,将一个计数器的最高位接led ,sys_en信号接计数器的异步清零端。当sys_en为0时,即系统停止采集数据时,计数器清零,led 为低电平,LED 直亮;否则,计数器处于计数状态,LED 闪烁。若用clk 作为LED 计数器的计数脉冲,需要的计数器位数比较多,这里采用full 信号作为LED 计数器的计数脉冲。 5.4 ADC接口模块设计

ADC 接口模块的主要功能为:为AIC31提供时钟信号,接收自AIC31的串行数字音频数据,然后转换为并行数据,并将数据传递给RAM 控制模块。

ADC 接口模块的端口信号描述如表5-1所示:

表5-1 ADC接口模块端口信号描述

Tab5-1 the description of the ADC interface module signal

5.4.1 CPLD与AIC31的串行数字音频接口

AIC31提供的串行数字音频接口有Left justified,Right justified,I2S ,DSP 和TDM 五种模式。本文中,CPLD 与AIC31之间的串行数字音频接口采用Left justified模式,时 WCLK 的频率即采样频率,为44.1KHz ,由CLK 的 512分频得到。 BCLK 的频率为WCLK 的32倍,由CLK 的16分频得到。

由图6-8可知,AIC31的串行输出数据SD 在BCLK 的下降沿变化,在BCLK 的上升沿处最稳定,因此,CPLD 在BCLK 的上升沿处对AIC31的串行输出数据SD 采样[7] 。 5.4.2 时钟产生器(clk_gen)

时钟产生器主要产生BCLK 、WCLK 等时钟信号。由于MCLK 与CLK 同频,BCLK 为CLK 的16分频,WCLK 为CLK 的512分频,所以时钟产生器可用9位计数器构成,如图5-4所示:

图5-4 时钟产生器电路图 Fig5-4 the circuit of clock generator

wclk 与计数器的clk_cnt(8)输出相连,bclk 与计数器的clk_cnt(3)输出相连。本设计中,ADC 转换精度为16位,为了节省CPLD 的资源,在接收ADC 串行数字音频数据时采用8位移位寄存器,每接收完一个字节,就将数据写到RAM 缓冲区中。为此,这里用tick 信号来指示是否wclk 脉冲高电平或者低电平的中点处。若是,tick 为1;否则,tick 为0[8] 。 5.5 RAM控制模块设计

RAM 控制模块的主要功能为:根据ADC 接口模块接收的各路数据控制写RAM

时序,将各路数据分别写入双口RAM 中各自的缓冲区,产生对网络微处理器的中断信号,并给总线切换模块提供切换信号。

RAM 控制模块的端口信号描述如表5-2所示:

表5-2 RAM控制模块端口信号描述

Tab6-4 the description of the RAM control module signal

5.5.1写RAM 时序

每次ds 有效,需将data0(AIC31_0的数据) 和data1(AIC31_1的数据) 依次写入RAM 。用一个计数器wccnt 的最高位来控制写选通信号we_w,通过改变计数器的位数即可改变向RAM 写一个数据所需的时间,从而可以满足不同速度RAM 的要求。本文用两位计数器,向RAM 写一个数据用4个clk 周期。 5.5.2 RAM控制主状态机

当检测到ds 信号的上升沿时,则需要向RAM 写数据,进入write0状态,将data0写入RAM ,然后再进入write1状态,将data1写入RAM ,最后回到idle 状态。 5.5.3地址产生器

在本设计中,将双口RAM 的低8K 存储区分为大小相等的两部分分别作为缓冲区A 和缓冲区B ,因同时采集四路音频数据,因此又将每部分分为四小部分分别存放各路数据,数据缓冲区的地址分配如图5-5所示[10]:

图5-5 数据缓冲区地址分配 Fig5-5 the address assignment of data buffer

5.6 波形仿真和结果分析

通过对CPLD 所完成的功能分析,结构设计,用XST 综合工具综合后,用ModelSim SE5.8a 先对各个子模块仿真,仿真无误后再对顶层设计进行仿真。 5.6.1 ADC接口模块仿真

将ADC 接口模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-7所示:

图5-7ADC 接口模块仿真波形图

Fig5-7 the simulation wave of ADC interface module

由ADC 接口模块的仿真波形图可知,仿真波形完全与期望波形吻合,即ADC 模块达到了所设计的功能要求。 5.6.2 RAM控制模块仿真

将RAM 控制模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-8所示:

图5-8 RAM控制模块仿真波形图

Fig5-8the simulation wave of RAM control module

由RAM 控制模块的仿真波形图可知,仿真波形完全与期望波形吻合,即RAM 控制模块达到了所设计的功能要求。 5.6.3 UC接口模块仿真

将UC 接口模块经XST 综合后,用ModelSim SE5.8a仿真后的波形图如图5-9所示。

图5-9 UC接口模块仿真波形图

Fig5-9 the simulation wave of UC interface module

由UC 接口模块的仿真波形图可知,仿真波形完全与期望波形吻合,即UC 接口模块达到了所设计的功能要求。

因此,UC 接口模块的仿真也完全正确。 5.6.4 顶层设计仿真

三个模块分别仿真无误后,将顶层设计经XST 综合后,用ModelSim SE5.8a 仿真后的波形图如图5-10所示:

图5-10 顶层设计仿真波形图

Fig5-10 the simulation wave of the top level design

由顶层设计的仿真波形图可知,仿真波形完全与期望波形吻合,即CPLD 设计达到了预期的功能要求。CPLD 给AIC31提供时钟信号,并同时接收两个AIC31的四路串行音频信号,将串行数据通过移位寄存器转换为并行数据后,分别将四路数据分别写入各自的缓冲区。CPLD 并能正确地检测微控制器的启动/停止信号,并在每个缓冲周期末通知微控制器读取数据[11] 。

6. 总结和展望

本文预设计一种多路音频采集器,系统采用CPLD 技术,实现了四路模拟音源的同时实时采集,将模拟音频信号以44.1kHz 的采样率、16位的采样精度转换为数字音频信号后,交由网络接口板传输到播放终端。传输过程的数字化使音频信号具有更好的可控性、保密性和抗干扰能力。系统还具有AGC(自动增益控制) 功能,能够根据输入音源信号幅度大小的不同自动将其稳定在一定的水平,避免了由于音源信号强弱的变化而造成播放终端声音的忽大忽小,同时保护了终端播放设备。

本论文所完成的工作如下:

收集、查阅了大量文献资料,分析、比较了当前的音频采集器,提出了一种以CPLD 技术多路音频采集器的设计方案。深入透彻地研究了数字音频技术。音频采集器硬件系统的设计。

本系统充分利用CPLD 在电子系统设计中的优越性,不仅使系统灵活,更具可扩展性,易于更新和维护,而且使系统小巧,稳定,功耗低,实时性强。

在本系统的设计过程中,也遇到了很多问题,但在导师的帮助下都一一解决。通过本设计,学到了很多东西。最为重要的是,学会了当遇到问题时根据现象去分析问题、并解决问题的方法。

虽然本系统的设计经验证已经达到了预期的功能要求,但是仍有待进一步研究。当前,大多数音频流服务器是通过PC 获取数据,或者是用其它方法将采集到的数据传给PC ,然后通过PC 将数据传送到网上,系统成本过高,随着人们需求的变化,现在市场上的相关产品已经多为音视频联合采集。

参考文献

[1] 刘毓敏. 数字音频技术应用. 北京:机械工业出版社[M],2003,3-4

[2] 黄勇峰. 因特网语音通信技术及其应用[M]. 北京:人民邮电出版社,2002, 1,51-60 [3] 尹晓勇. 计算机网络基础[M]. 北京:电子工业出版社,2002, 1,62-65

[4] Ken C. Pohlmann著,苏菲译. 数字音频原理与应用[M],第四版. 北京:电子工业出版社,2002,15-16 [5] 卢官明,宗昉. 数字音频原理及应用[M]. 北京:机械工业出版社,2002,6,14-21 [6] 林敏. VHDL 系统设计与高层次综合[J].北京:电子工业出版社,2002

[7] 侯伯亨,顾新. VHDL 硬件描述语言与数字逻辑电路设计[M]. 西安:西安电子科技大学出版社. 1997 [8] 朱明程,董尔令等. 可编程逻辑器件原理及应用[M]. 西安:西安电子科技大学出版社,2004 [9] Douglas L.Perry. VHDL Programming by Example[J], Fourth Edition. McGraw-Hill, 2002,25-208 [10] Michael Keating, and Pierre Bricaud. Reuse Methodology Manual,[M] Third Edition. Kluwer Academic

Publishers, 2002,90-96.

[11] 王诚,薛小刚,钟信潮.FPGA/CPLD设计工具-XILINX ISE 使用详解[J].北京:人民邮电出版

社.2005

致谢

本论文是在导师... 的悉心指导下完成的。导师严谨治学的科研态度,深厚的学术造诣,勇于探索的进取精神,谦虚认真的学者风度都给我留下了极其深刻的印象,导师的教诲将使我终生受益。在此,谨向敬爱的导师表示最诚挚的谢意。

在攻读学士的四年中,得到... 等老师的指导和帮助,在此向他们表示感谢。

感谢...... 等实验室的同学,还有所有帮助我、支持我的朋友!他们让我感受了友情,促使了我的成长。

感谢我远方的父母和家人,他们培养我、理解我、支持我,尽他们最大努力为我营造了好的学习、生活条件。

本文中参考的文献来自众多书籍、期刊和论文,在此对这些文章的作者表示感谢。 最后,感谢在百忙之中评阅本论文的各位老师!

王宇航 2008.6.

Multi-channel audio Collector

Student majoring in electronic information engineering wangyuhang Tutor yangaizhen

Abstract: With the change of the people’s requirement, many applications need to sample the multi channel audio signal simultaneously. Based on referring to abundant information, a system is designed. The system introduced the technology of CPLD of four channel analog audio signal simultaneously. In the end, tested the system meets the prospective function.

Keyword: digital audio: Applied present condition; Develop trend; CPLD; Dual-port RAM


相关文章

  • 网络会议系统设计方案
  • 网络会议系统设计方案 云屋科技 目 录 第一章 系统整体架构...................................................... 4 1.1总体架构设计 . ..................... ...查看


  • 电子信息工程毕业设计题目大全
  • 1 压力容器液位测量 2 多功能遥控小车 3基于RS232的仓库多点温度.湿度.气 4压检测系统 5自动控制升降旗系统 6基于RS485的温度报警系统 7基于模糊算法的水温控制系统的设计 8多分机电话交换机 9简易火灾自动报警系统 10基于 ...查看


  • 校园录播教室技术招标要求
  • A V A 录播教室技术要求 1. 基本功能 采用先进的导播系统以实现教师教学活动.师生互动的拍摄制作精品课程及课程资源建设所需要的各种课件及多格式视频文件.投标方可在显著位置以不超过500字阐述所投标系统的功能.特点和优势. 2. 技术及 ...查看


  • 全程同步录音录像系统建设规范(试行)
  • 全程同步录音录像系统建设规范(试行) 人民检察院讯问职务犯罪嫌疑人实行全程同步录音录像系统建设规范(试行) 本规范是人民检察院建设讯问职务犯罪嫌疑人实行全程同步录音录像系统的参照标准,适用于规范新建.扩建和改建的固定场所录音录像系统和临时场 ...查看


  • 源博YB/DDC-G310型电量采集装置说明书
  • 源博YB /DDC -G310型 多路电量采集柜 技术及使用说明 四川源博保护控制有限责任公司 目 录 第一章 装置的用途及主要功能 1.1 扩展功能 1.2 采集功能 1.3 存储功能 1.4 远传功能 1.5 时钟特性 1.6 报警性能 ...查看


  • 数据采集及分析系统
  • 关键词:声卡 数据采集 MATLAB 信号处理 论文摘要:利用数据采集卡构建的数据采集系统一般价格昂贵且难以与实际需求完全匹配.声卡作为数据采集卡具有价格低廉.开发容易和系统灵活等优点.本文详细介绍了系统的开发背景, 软件结构和特点, 系统 ...查看


  • 机电一体化论文题目一览表
  • 1 毕 业 论 文(设计)题 目 2 基于AD9851的跳频控制电路设计 3 基于伪随机序列噪声发生器设计 4 基于FPGA的延时倍频电路PLL设计 5 基于FPGA的无线搜寻系统设计 6 基于FPGA的电机测速显示设计 7 基于FPGA的 ...查看


  • 森林防火监控系统解决方案
  • 森林防火监控 系 统 解 决 方 案 杭州海康威视数字技术有限公司 二〇〇八年 目 录 1 概述........................................................................ ...查看


  • 多路视频数据实时采集系统设计与实现
  • 多路视频数据实时采集系统设计与实现 常永亮 王霖萱 常馨蓉 ( 中国飞行试验研究院 陕西 西安 710089) ( 贵州省贵阳市花溪区贵州大学 贵州省贵阳市 550025) ( 陕西省榆林市榆阳区榆林学院 陕西省榆林市 719000) 摘要 ...查看


热门内容