基于FPGA的音频信号分析仪设计(含完整程序).doc
《基于FPGA的音频信号分析仪设计(含完整程序).doc》由会员分享,可在线阅读,更多相关《基于FPGA的音频信号分析仪设计(含完整程序).doc(50页珍藏版)》请在三一办公上搜索。
1、本科毕业论文(设计)题 目 基于FPGA的音频信号分析仪 学生姓名 专业名称 电子信息科学与技术 指导教师 教师职称 2009年12月10日基于FPGA的音频信号分析仪摘要:本音频信号分析仪以FPGA为核心,通过前级信号调理电路和12位A/D转换芯片,对音频信号进行正确采样,把连续信号离散化。然后通过基于Altera Cyclone II 系列FPGA嵌入高性能的NIOS II处理器,代替传统的DSP芯片和高性能MCU,实现了基于FFT的音频信号分析仪,并在时域和频域对音频信号各个频率分量以及功率等指标进行分析和处理。最后采用高分辨率的彩色液晶对信号的功率谱等信息进行显示并通过触摸屏控制整个系
2、统的运行。该系统能够精确测量的音频信号频率范为100Hz-10KHz,其幅度范围为100mVpp-5Vpp,分辨力分为100Hz和20Hz两档,测量功率精确度高达5%,是理想的音频信号分析仪的解决方案。关键词:FFT;FPGA;NIOS II ;频谱;信号功率;The Audio Signal Analyzer Based on FPGAAbstract: The audio signal analyzer is based on FPGA, through the signal processing circuit and 12bit A / D converter chip for aud
3、io signal sampling, the continuous signal discrete. Instead of using DSP or MCU, we use high performance NIOS II Embedded Processor for FFT fast Fourier transform computing and in the time domain and frequency domain of the various audio frequency signal weight and power, and other indicators for an
4、alysis and processing. At last through the high-resolution Touch screen LCD display the signal power spectrum and control the operation of the entire system. The system can accurately measure the audio signal frequency range of 100Hz - 10 KHz, the range of 100mVpp-5Vpp, resolution of 100 Hz and 20 H
5、z correspondent. Power measurement accuracy up to 5%, is the ideal audio signal analyzer solution.Keyword: FFT;FPGA;NIOS II ;Spectrum;Signal Power;目 录1 前言11.1音频分析原理11.2音频分析方法11.3音频参数测量及分析12 系统方案设计32.1系统设计要求32.2系统方案论证32.2.1 系统整体方案选择32.2.2 系统核心处理器的选择33 系统硬件设计53.1 FPGA与NIOS II介绍53.2 FPGA核心板电路设计53.2.1 F
6、PGA电源电路63.2.2FPGA时钟电路73.2.3FPGA配置电路93.3前级信号调理电路103.4AD采样电路设计133.5系统电源电路设计143.6彩色液晶电路设计143.7触摸屏电路设计154系统软件设计174.1NIOSII集成开发环境介绍174.2系统主程序设计174.3AD转换驱动程序184.4触摸屏识别程序194.5 FFT算法的C语言实现204.5.1 FFT的MATLAB仿真与分析204.5.2倒位序算法分析234.5.3实数蝶形运算算法234.5.4 DITFFT算法的基本思想分析245 系统调试与测试结果265.1系统调试265.2测试方案与测试结果265.2.1测试
7、电路265.2.2两路信号总功率测量275.2.3单个频率分量测量275.3误差分析286结束语29参考文献30附 录31附录一31附录二35附录三36附录四42附录五43附录六44谢 辞461 前言1.1 音频分析原理音频是多媒体中的一种重要媒体。我们能够听见的音频信号的频率范围大约是20Hz-20kHz,其中语音大约分布在300Hz-4kHz之内,而音乐和其他自然声响是全范围分布的。声音经过模拟设备记录或再生,成为模拟音频,再经数字化成为数字音频。这里所说的音频分析就是以数字音频信号为分析对象,以数字信号处理为分析手段,提取信号在时域、频域内一系列特性的过程。音频分析的原理主要涉及数字信号
8、处理的基本理论、音频分析的基本方法以及音频参数测量和分析内容,其中数字信号处理是音频分析的理论基础。傅立叶变换和信号的采样是进行音频分析时用到的最基本的技术。傅立叶变换是进行频谱分析的基础,信号的频谱分析是指按信号的频率结构,求取其分量的幅值、相位等按频率分布规律,建立以频率为横轴的各种“谱”,如幅度谱、相位谱。在以计算机为中心的测试系统中,模拟信号进入数字计算机前先经过A/D变换器,将连续时间信号变为离散时间信号,称为信号的采样。然后再经幅值量化变为离散的数字信号。这样,在频域上将会出现一系列新的问题,频谱会发生变化。由模拟信号变成数字信号后,其傅立叶变换也变成离散傅立叶变换,涉及到采样定理
9、、频率混叠、截断和泄漏、加窗与窗函数等一系列问题。1.2 音频分析方法通常在对某音频设备音频测量分析时,该设备被看成是一个具有输入端口和输出端口的黑箱系统。将某种己知信号输入该系统,然后从输出端获取输出信号进行分析,从而了解该系统的一些特性,这就是音频分析的一般方法。输入音频设备的信号,称作激励信号。激励信号可以是正弦、方波等周期信号,也可以是白噪声、粉红噪声等随机信号,还可以是双音、多音、正弦突发等信号。最常用的检测分析方法有正弦信号检测、脉冲信号检测、最大长度序列信号检测等。1.3 音频参数测量及分析音频测量一般包括信号电压、频率、信噪比、谐波失真等基本参数。大部分音频参数都可以由这几种基
10、本参数组合而成。音频分析可以分为时域分析、频域分析、时频分析等几类。由于信号的谐波失真对于音频测量比较重要,因此将其单独归类为失真分析。以下分别介绍各种音频参数测量和音频分析。音频测量中需要测量的基本参数主要有电压、频率、信噪比。电压测试可以分为均方根电压(RMS)、平均电压和峰值电压等几种。频率是音频测量中最基本的参数之一。通常利用高频精密时钟作为基准来测量信号的频率。测量频率时,在一个限定的时间内的输入信号和基准时钟同时计数,然后将两者的计数值比较后乘以基准时钟的频率就得到信号频率。随着微处理芯片的运算速度的提高,信号的频率也可以利用快速傅立叶变换通过软件计算得到。信噪比是音频设备的基本性
11、能指标,是信号的有效电压与噪声电压的比值。在实际测量中,为方便起见,通常用带有噪声的信号总电压代替信号电压计算信噪比。时域分析通常是将某种测试信号输入待测音频设备,观察设备输出信号的时域波形来评定设备的相关性能。最常用的时域分析测试信号有正弦信号、方波信号、阶跃信号及单音突变信号等。例如将正弦信号输入设备,观察输出信号时域波形失真就是一种时域分析方法。频域分析是音频分析的重要内容,频域分析的主要依据是频率响应特性曲线图。频率响应曲线图反映了音频设备在整个音频范围内的频率响应的分布情况。一般来说曲线峰值处的频率成分,回放声压大、声压强;曲线谷底处频率成分声压小、声音弱。若波峰和波谷起伏太大,则会
12、造成较严重的频率失真。谐波失真的测量方法有两种,一种是以正弦信号输入待测设备,然后分析设备响应信号的频率成分,可以得到谐波失真。另一种更简单的测量方法是首先利用带阻滤波器滤除响应信号中的基频成分,然后直接测量剩余信号的电压,将其与原响应信号作比较,就可以得到谐波失真。显然第二种方法得到的谐波失真是THD+N,由于采用了信号的总电压值代替了基频分量电压值,因此得到的谐波失真比实际值偏小,且实际的谐波失真越大,误差越大。在实际的音频测量时,通常在一定的频率范围内选取若干个频率点,分别测量出各点的谐波失真,然后将各谐波失真数值以频率为横坐标连成一条曲线,称为谐波失真曲线。2 系统方案设计2.1 系统
13、设计要求本系统是在2007年全国大学生电子设计竞赛A题音频信号分析仪的基础上进行设计的,题目的基本部分要求如下:(1)输入阻抗:50Ohm(2)输入信号电压范围(峰-峰值):100mV5V(3)输入信号包含的频率成分范围:200Hz10kHz(4)频率分辨力:100Hz(可正确测量被测信号中,频差不小于100Hz的频率分量的功率值。)(5)检测输入信号的总功率和各频率分量的频率和功率,检测出的各频率分量的功率之和不小于总功率值的95%;各频率分量功率测量的相对误差的绝对值小于10%,总功率测量的相对误差的绝对值小于5%。(6)分析时间:5秒。应以5秒周期刷新分析数据,信号各频率分量应按功率大小
14、依次存储并可回放显示,同时实时显示信号总功率和至少前两个频率分量的频率值和功率值,并设暂停键保持显示的数据。2.2 系统方案论证2.2.1 系统整体方案选择音频信号分析仪可分为模拟式音频信号分析仪和数字式音频信号分析仪。方案一:以FFT为基础的的数字音频信号分析仪。通过对信号的频域分析可以很方便的得到输入信号的各种信息,如功率谱、频率分量以及周期性等。外围电路少,实现方便,精度高。方案二:以模拟滤波器为基础的模拟式频谱分析仪。扫描滤波法、有并行滤波法、小外差法等。因为受到模拟滤波器滤性能的限制,此种方法实现起来比较困难。所以选用方案一作为本系统的实现方式。2.2.2 系统核心处理器的选择方案一
15、:以普通单片机为核心进行相关算法的处理。从发展历史看,单片机的发展已经有比较长的时间,应用比较广泛,各种技术都比较成熟,但单片机处理速度不是很快,存储器资源不够,没有实现数字信号处理的DSP模块。故不采用普通单片机。方案二:采用DSP处理器进行处理。和普通单片机相比,DSP的处理速度快,存储器资源,很适合FFT算法的实现。但是DSP处理器芯片的结构有点复杂,开发难度大。方案三:在FPGA中嵌入NIOS II处理器,通过软件实现。NIOS II 支持C语言编程方式,普通的C语言版的FFT稍加改正即可应用到本方案中,而且Altera Cyclone II FPGA内部有丰富的硬件乘法器和存储器资源
16、,开发难度低,速度快。考虑到本系统对处理器的处理速度要求不是很高。为了减小开发难度,采用了方案三。音频信号先经过由运放和电阻组成的50Ohm阻抗匹配电路以满足输入阻抗50 Ohm的系统要求,这样方便信号功率的计算。为了保证所处理的信号被不失真的采样,信号还要通过截止频率为10Khz的抗混叠低通滤波器。最后为了AD能正确的采样,信号还要通过信号抬高电路。经过12位A/D转换芯片MAX144转换后的数字信号经由基于FPGA的NIOSII处理器进行FFT变换和处理,分析各个频率点的功率值,并将这些值显示在分辨率320*240的彩色液晶上。图1 系统总体框图3 系统硬件设计3.1 FPGA与NIOS
17、II介绍现场可编程门阵列(FPGA)是一种半导体器件,可以在制造完成后进行编程。FPGA硬件功能不是预先确定好的,而是针对产品特性和功能进行编程,以适应新标准,即使产品已经在现场使用了,也可以针对某些应用重新配置硬件因此,叫做“现场可编程”。也可以使用FPGA来实现专用集成电路(ASIC)完成的任何逻辑功能,而且在产品发售后也能够对功能进行更新,在很多应用中都具有一定优势。与以前使用可编程逻辑和互联I/O的FPGA不同,现在的FPGA含有各种可配置嵌入式SRAM、高速收发器、高速I/O、逻辑模块和走线。特别是,FPGA含有名为逻辑单元(LE)的可编程逻辑,以及分层的可配置互联,支持LE的物理连
18、接。您可以配置LE来完成复杂的组合功能,或者只是简单的AND和XOR等逻辑门。在大部分FPGA中,逻辑模块含有存储器单元,例如简单的触发器或者较复杂的存储器模块等。NIOSII系列软核处理器是ALTERA的第二代FPGA嵌入式处理器,其性能超过200DMIPS,在ALTERA FPGA中实现仅需35美分。ALTERA的STRATIX、STRATIXGX、 STRATIX II和 CYCLON系列FPGA全面支持NIOS II处理器,以后推出的FPGA器件也将支持NIOS II。自ALTERA于2000年推出第一代16位NIOS处理器以来,已经交付了13000多套NIOS开发套件,NIOS成为最
19、流行的软核处理器。刚推出的NIOS II系列采用全新的架构,比第一代NIOS具有更高水平的效率和性能。和第一代相比,NIOS II核平均占用不到50%的FPGA资源,而计算性能增长了1倍。3.2 FPGA核心板电路设计系统采用的是ALTERA公司的CYCLON II 系列型号为EP2C8Q208C8的FPGA芯片。CYCLON II器件采用了90nm工艺制造,其增加了硬的DSP块,在芯片总体性能上要优于第一代产品CYCLON系列器件。FPGA核心板电路图主要由FPGA电源电路(图2)、时钟电路(图3)、配置电路(图4)和Sdram和Flash电路(图5)组成四部分组成。3.2.1 FPGA电源
20、电路本系统的FPGA核心板需要3.3V和1.2V两种电压。CYCLONII器件的每个bank都有VREF引脚,可用来独立支持任一种基准电压标准,其具有两重功能,如果某一I/Obank不使用基准电压标准,那么VREF引脚作为可用的I/O引脚。每个bank也有专用的VCCIO引脚,每个CYCLONII器件都支持1.5V,1.8V,2.5V和3.3V的接口,各个独立的bank也支持不同的I/O电压标准。每个I/Obank通过多个VCCIO引脚为输入输出提供多种标准,例如当VCCIO为3.3V时,该bank为输入输出引脚提供LVTTL,LVCOMS和3.3VPCI。在I/Obank中可使用许多单端和差
21、分标准,只要他们使用相同的VREF和适当的VCCIO值。CYCLONII的架构支持多电压I/O接口,这就允许CYCLONII器件为多系统提供不同的电压。CYCLONII器件带有一组VCC引脚(VCCINT),用于驱动内部逻辑门阵列和使用LVPECL,LVDS,HSTL或者SSTLI/O标准的输入缓冲器。还有4组或者8组的VCC引(VCCIO)用于驱动输出I/O引脚和使用LVTTL,LVCMOS或者PCII/O标准的输入缓冲器。CYCLONII器件的VCCINT引脚必须接1.2V的电源,如果VCCINT接的是1.2V,那么输入引脚允许接1.5V,1.8V,2.5V或者3.3V。VCCIO引脚能从
22、1.5V,1.8V,2.5V或者3.3V的电源中任选,依赖于输出的需求。输出电平可以与系统的电源相容。(例如当VCCIO接了1.5V的电源,输出电平就会调整为1.5V的系统)。当VCCIO引脚接了3.3V的电源,输出最高为3.3V并且与3.3V的系统兼容。由于FPGA核心板要驱动AD转换芯片和彩色液晶,而AD转换芯片和彩色液晶都需要与3.3V电压兼容的电平。所以VCCIO引脚接了3.3V的电源的电压。图2 FPGA核心板电源电路3.2.2 FPGA时钟电路(1)全局时钟网络在整个CYCLONII器件中有16或者8个全局时钟网络驱动器,专用的时钟引脚(CLK ),PLL输出,逻辑阵列和两用的时钟
23、引脚(DPCLK)都能驱动全局时钟网络。如果这些专用的时钟引脚没有用来提供给全局时钟网络,那么他们可以被用作普通的输入引脚提供给逻辑阵列作为多通道连接。不过,如果他们被用作普通目的的输入引脚,他们没有可用的I/O寄存器,必须用LE-based寄存器来代替。CYCLONII器件总有20个或8个有双重用处的时钟引脚,DPCLK19.0或者DPCLK7.0,较大的器件有20个,左右两边各4个,上下两边各6个。角落的CDPCLK引脚在进入时钟控制模块之前首先被复用。直到有信号通过一个多路复用器馈送到时钟控制模块之前,这些信号到时钟控制模块产生的延时要大于其他直接馈送到时钟控制模块的DPCLK引脚。在较
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 音频 信号 分析 设计 完整 程序
链接地址:https://www.31ppt.com/p-4152896.html